aboutsummaryrefslogtreecommitdiffstats
path: root/thread_pthread.h
diff options
context:
space:
mode:
authorkosaki <kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-05-06 16:47:38 +0000
committerkosaki <kosaki@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2011-05-06 16:47:38 +0000
commita1cfaf4b1f199d078f5168dcbc37a83250666ed4 (patch)
tree2884f9788c15841aa4d7973c9c98832d3a22c9df /thread_pthread.h
parent4a9883e92f856bf7db773e0ddc72f17a8662b75a (diff)
downloadruby-a1cfaf4b1f199d078f5168dcbc37a83250666ed4.tar.gz
* thread_pthread.h (rb_thread_cond_t): add clockid field. it's
no longer an alias of pthread_cond_t. * thread_pthread.c: adapt new rb_thread_cond_t type. * thread.c (mutex_alloc): ditto. * thread_win32.c (native_cond_initialize): ditto. * configure.in: add check for pthread_cond_attr_setclock() and clockid_t type. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@31451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'thread_pthread.h')
-rw-r--r--thread_pthread.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/thread_pthread.h b/thread_pthread.h
index 3742cb2848..64a17fcf67 100644
--- a/thread_pthread.h
+++ b/thread_pthread.h
@@ -17,12 +17,16 @@
#endif
typedef pthread_t rb_thread_id_t;
typedef pthread_mutex_t rb_thread_lock_t;
-typedef pthread_cond_t rb_thread_cond_t;
+
+typedef struct rb_thread_cond_struct {
+ pthread_cond_t cond;
+ clockid_t clockid;
+} rb_thread_cond_t;
typedef struct native_thread_data_struct {
void *signal_thread_list;
- pthread_cond_t sleep_cond;
- pthread_cond_t gvl_cond;
+ rb_thread_cond_t sleep_cond;
+ rb_thread_cond_t gvl_cond;
struct rb_thread_struct *gvl_next;
} native_thread_data_t;