2 * mono-tls.h: Low-level TLS support
5 * Rodrigo Kumpera (kumpera@gmail.com)
10 #ifndef __MONO_TLS_H__
11 #define __MONO_TLS_H__
18 #define MonoNativeTlsKey DWORD
19 #define mono_native_tls_alloc(key,destructor) ((key = TlsAlloc ()) != TLS_OUT_OF_INDEXES && destructor == NULL)
20 #define mono_native_tls_free TlsFree
21 #define mono_native_tls_set_value TlsSetValue
22 #define mono_native_tls_get_value TlsGetValue
28 #define MonoNativeTlsKey pthread_key_t
29 #define mono_native_tls_alloc(key,destructor) (pthread_key_create (&key, destructor) == 0)
30 #define mono_native_tls_free pthread_key_delete
31 #define mono_native_tls_set_value(k,v) (!pthread_setspecific ((k), (v)))
32 #define mono_native_tls_get_value pthread_getspecific
34 #endif /* HOST_WIN32 */
37 #endif /* __MONO_TLS_H__ */