Sha256: 26647d1bee560047b56c5b82b1d91b5e37d6994f2d1fb29249c1c3034e4e2e59
Contents?: true
Size: 1.19 KB
Versions: 870
Compression:
Stored size: 1.19 KB
Contents
/********************************************************************** thread_pthread.h - $Author: ko1 $ Copyright (C) 2004-2007 Koichi Sasada **********************************************************************/ #ifndef RUBY_THREAD_PTHREAD_H #define RUBY_THREAD_PTHREAD_H #include <pthread.h> #ifdef HAVE_PTHREAD_NP_H #include <pthread_np.h> #endif typedef pthread_t rb_nativethread_id_t; typedef pthread_mutex_t rb_nativethread_lock_t; typedef struct rb_thread_cond_struct { pthread_cond_t cond; #ifdef HAVE_CLOCKID_T clockid_t clockid; #endif } rb_nativethread_cond_t; typedef struct native_thread_data_struct { void *signal_thread_list; rb_nativethread_cond_t sleep_cond; } native_thread_data_t; #include <semaphore.h> #undef except #undef try #undef leave #undef finally typedef struct rb_global_vm_lock_struct { /* fast path */ unsigned long acquired; pthread_mutex_t lock; /* slow path */ volatile unsigned long waiting; rb_nativethread_cond_t cond; /* yield */ rb_nativethread_cond_t switch_cond; rb_nativethread_cond_t switch_wait_cond; int need_yield; int wait_yield; } rb_global_vm_lock_t; #endif /* RUBY_THREAD_PTHREAD_H */
Version data entries
870 entries across 86 versions & 6 rubygems