Merge pull request #1614 from ctiller/make-tls-a-lil-sweeter

Guarantee tls_set returns the new value
pull/1617/head
Nicolas Noble 10 years ago
commit 3f0db08109
  1. 2
      include/grpc/support/tls.h
  2. 2
      include/grpc/support/tls_pthread.h

@ -54,7 +54,7 @@
Destroying a thread local:
gpr_tls_destroy(&foo);
Setting a thread local:
Setting a thread local (returns new_value):
gpr_tls_set(&foo, new_value);
Accessing a thread local:

@ -47,7 +47,7 @@ struct gpr_pthread_thread_local {
#define gpr_tls_init(tls) GPR_ASSERT(0 == pthread_key_create(&(tls)->key, NULL))
#define gpr_tls_destroy(tls) pthread_key_delete((tls)->key)
#define gpr_tls_set(tls, new_value) \
GPR_ASSERT(pthread_setspecific((tls)->key, (void*)(new_value)) == 0)
(GPR_ASSERT(pthread_setspecific((tls)->key, (void*)(new_value)) == 0), (new_value))
#define gpr_tls_get(tls) ((gpr_intptr)pthread_getspecific((tls)->key))
#endif

Loading…
Cancel
Save