Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
we don't need thread_specific anymore
authorMartin Quinson <martin.quinson@loria.fr>
Wed, 18 Jul 2018 19:21:33 +0000 (21:21 +0200)
committerMartin Quinson <martin.quinson@loria.fr>
Wed, 18 Jul 2018 19:22:32 +0000 (21:22 +0200)
ChangeLog
include/xbt/xbt_os_thread.h
src/xbt/xbt_os_thread.c

index 96abe8a..f5fada5 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -3,6 +3,9 @@ SimGrid (3.21) NOT RELEASED (Release Target: September 23. 2018, 1:54 UTC)
 Tracing:
  - Rename 'power' and 'power_used' variables into 'speed' and 'speed_used'
  - New host variable: 'core_count'
 Tracing:
  - Rename 'power' and 'power_used' variables into 'speed' and 'speed_used'
  - New host variable: 'core_count'
+XBT:
+ - Remove xbt_os_thread_specific features
 
 Fixed bugs:
  - #264: Add ptask L07 resource tracing
 
 Fixed bugs:
  - #264: Add ptask L07 resource tracing
index 9c63fa1..6774a63 100644 (file)
@@ -15,8 +15,6 @@
 
 SG_BEGIN_DECL()
 
 
 SG_BEGIN_DECL()
 
-typedef pthread_key_t xbt_os_thread_key_t;
-
 /** @addtogroup XBT_thread
  *  @brief Thread portability layer
  *
 /** @addtogroup XBT_thread
  *  @brief Thread portability layer
  *
@@ -38,10 +36,6 @@ XBT_PUBLIC xbt_os_thread_t xbt_os_thread_self(void);
 XBT_PUBLIC const char* xbt_os_thread_self_name(void);
 XBT_PUBLIC void xbt_os_thread_set_extra_data(void* data);
 XBT_PUBLIC void* xbt_os_thread_get_extra_data(void);
 XBT_PUBLIC const char* xbt_os_thread_self_name(void);
 XBT_PUBLIC void xbt_os_thread_set_extra_data(void* data);
 XBT_PUBLIC void* xbt_os_thread_get_extra_data(void);
-XBT_PUBLIC void xbt_os_thread_key_create(xbt_os_thread_key_t* key);
-XBT_PUBLIC void xbt_os_thread_key_destroy(xbt_os_thread_key_t key);
-XBT_PUBLIC void xbt_os_thread_set_specific(xbt_os_thread_key_t key, void* value);
-XBT_PUBLIC void* xbt_os_thread_get_specific(xbt_os_thread_key_t key);
 /* xbt_os_thread_join frees the joined thread (ie the XBT wrapper around it, the OS frees the rest) */
 XBT_PUBLIC void xbt_os_thread_join(xbt_os_thread_t thread, void** thread_return);
 XBT_PUBLIC void xbt_os_thread_yield(void);
 /* xbt_os_thread_join frees the joined thread (ie the XBT wrapper around it, the OS frees the rest) */
 XBT_PUBLIC void xbt_os_thread_join(xbt_os_thread_t thread, void** thread_return);
 XBT_PUBLIC void xbt_os_thread_yield(void);
index 3b58603..3d566e6 100644 (file)
@@ -246,29 +246,6 @@ xbt_os_thread_t xbt_os_thread_self(void )
   return pthread_getspecific(xbt_self_thread_key);
 }
 
   return pthread_getspecific(xbt_self_thread_key);
 }
 
-void xbt_os_thread_key_create(xbt_os_thread_key_t* key)
-{
-  int errcode = pthread_key_create(key, NULL);
-  xbt_assert(errcode==0 , "pthread_key_create failed");
-}
-
-void xbt_os_thread_key_destroy(xbt_os_thread_key_t key)
-{
-  int errcode = pthread_key_delete(key);
-  xbt_assert(errcode == 0, "pthread_key_delete failed");
-}
-
-void xbt_os_thread_set_specific(xbt_os_thread_key_t key, void* value)
-{
-  int errcode = pthread_setspecific(key, value);
-  xbt_assert(errcode==0, "pthread_setspecific failed");
-}
-
-void* xbt_os_thread_get_specific(xbt_os_thread_key_t key)
-{
-  return pthread_getspecific(key);
-}
-
 #include <sched.h>
 void xbt_os_thread_yield(void)
 {
 #include <sched.h>
 void xbt_os_thread_yield(void)
 {