Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(14)

Unified Diff: src/ports/SkTLS_pthread.cpp

Issue 2003163004: pthread_once -> SkOnce (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: simpler Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/ports/SkTLS_pthread.cpp
diff --git a/src/ports/SkTLS_pthread.cpp b/src/ports/SkTLS_pthread.cpp
index ac558a81965bedfb7a22a6bac8d001181c9eb1b4..445d76d13a6b923b5495326382651576eb032b8e 100644
--- a/src/ports/SkTLS_pthread.cpp
+++ b/src/ports/SkTLS_pthread.cpp
@@ -6,22 +6,17 @@
*/
#include "SkTLS.h"
+#include "SkOnce.h"
#include <pthread.h>
static pthread_key_t gSkTLSKey;
-static pthread_once_t gSkTLSKey_Once = PTHREAD_ONCE_INIT;
-
-static void sk_tls_make_key() {
- (void)pthread_key_create(&gSkTLSKey, SkTLS::Destructor);
-}
void* SkTLS::PlatformGetSpecific(bool forceCreateTheSlot) {
- // should we use forceCreateTheSlot to potentially skip calling pthread_once
- // and just return nullptr if we've never been called with
- // forceCreateTheSlot==true ?
-
- (void)pthread_once(&gSkTLSKey_Once, sk_tls_make_key);
+ // should we use forceCreateTheSlot to potentially just return nullptr if
+ // we've never been called with forceCreateTheSlot==true ?
+ static SkOnce once;
+ once(pthread_key_create, &gSkTLSKey, SkTLS::Destructor);
return pthread_getspecific(gSkTLSKey);
}
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698