Chromium Code Reviews| Index: src/core/SkGlyphCache_Globals.h |
| diff --git a/src/core/SkGlyphCache_Globals.h b/src/core/SkGlyphCache_Globals.h |
| index e8f950f6114a4d6ddc0f3b7db5cd086021622c5c..c38cd0ed1b776391723fc0005ad436e983fcf2d1 100644 |
| --- a/src/core/SkGlyphCache_Globals.h |
| +++ b/src/core/SkGlyphCache_Globals.h |
| @@ -10,6 +10,7 @@ |
| #include "SkGlyphCache.h" |
| #include "SkMutex.h" |
| +#include "SkSpinlock.h" |
| #include "SkTLS.h" |
| #ifndef SK_DEFAULT_FONT_CACHE_COUNT_LIMIT |
| @@ -22,23 +23,18 @@ |
| /////////////////////////////////////////////////////////////////////////////// |
| -class SkMutex; |
| +class SkSpinlock; |
|
mtklein_C
2015/07/09 16:46:22
Must be we can remove this now.
herb_g
2015/07/09 18:21:16
Done.
|
| class SkGlyphCache_Globals { |
| public: |
| - enum UseMutex { |
| - kNo_UseMutex, // thread-local cache |
| - kYes_UseMutex // shared cache |
| - }; |
| + using Lock = SkSpinlock; |
|
mtklein_C
2015/07/09 16:46:22
now unused?
herb_g
2015/07/09 18:21:16
Removed
|
| - SkGlyphCache_Globals(UseMutex um) { |
| + SkGlyphCache_Globals() { |
| fHead = NULL; |
| fTotalMemoryUsed = 0; |
| fCacheSizeLimit = SK_DEFAULT_FONT_CACHE_LIMIT; |
| fCacheCount = 0; |
| fCacheCountLimit = SK_DEFAULT_FONT_CACHE_COUNT_LIMIT; |
| - |
| - fMutex = (kYes_UseMutex == um) ? SkNEW(SkMutex) : NULL; |
| } |
| ~SkGlyphCache_Globals() { |
| @@ -48,11 +44,9 @@ public: |
| SkDELETE(cache); |
| cache = next; |
| } |
| - |
| - SkDELETE(fMutex); |
| } |
| - SkMutex* fMutex; |
| + SkSpinlock fLock; |
| SkGlyphCache* internalGetHead() const { return fHead; } |
| SkGlyphCache* internalGetTail() const; |
| @@ -88,17 +82,6 @@ public: |
| void internalDetachCache(SkGlyphCache*); |
| void internalAttachCacheToHead(SkGlyphCache*); |
| - // can return NULL |
| - static SkGlyphCache_Globals* FindTLS() { |
| - return (SkGlyphCache_Globals*)SkTLS::Find(CreateTLS); |
| - } |
| - |
| - static SkGlyphCache_Globals& GetTLS() { |
| - return *(SkGlyphCache_Globals*)SkTLS::Get(CreateTLS, DeleteTLS); |
| - } |
| - |
| - static void DeleteTLS() { SkTLS::Delete(CreateTLS); } |
| - |
| private: |
| SkGlyphCache* fHead; |
| size_t fTotalMemoryUsed; |
| @@ -110,14 +93,6 @@ private: |
| // and attempt to purge caches to match. |
| // Returns number of bytes freed. |
| size_t internalPurge(size_t minBytesNeeded = 0); |
| - |
| - static void* CreateTLS() { |
| - return SkNEW_ARGS(SkGlyphCache_Globals, (kNo_UseMutex)); |
| - } |
| - |
| - static void DeleteTLS(void* ptr) { |
| - SkDELETE((SkGlyphCache_Globals*)ptr); |
| - } |
| }; |
| #endif |