39 enum thread_sched_waiting_flag {
40 thread_sched_waiting_none = 0x00,
41 thread_sched_waiting_timeout = 0x01,
42 thread_sched_waiting_io_read = 0x02,
43 thread_sched_waiting_io_write = 0x08,
44 thread_sched_waiting_io_force = 0x40,
49#ifdef MY_RUBY_BUILD_MAY_TIME_TRAVEL
54 uint32_t event_serial;
60 struct ccan_list_node node;
68 struct ccan_list_node fd_node;
121 rb_nativethread_id_t thread_id;
123#ifdef RB_THREAD_T_HAS_NATIVE_ID
130 HANDLE interrupt_event;
137 rb_nativethread_lock_t running_th_lock;
139 struct ccan_list_node snts_node;
141 struct ccan_list_node running_dnts_node;
144 uint32_t barrier_counted_serial;
147 rb_nativethread_cond_t readyq;
149#ifdef USE_SIGALTSTACK
215 rb_nativethread_lock_t lock;
219 rb_nativethread_cond_t cond;
221 unsigned int dnt_cnt;
223 unsigned int max_cpu;
224 struct ccan_list_head grq;
226 unsigned int grq_cnt;
231 rb_nativethread_lock_t lock;
232 struct ccan_list_head running_dnts;
233 struct ccan_list_head snts;
239 rb_nativethread_lock_t lock;
240 struct ccan_list_head scheds;
244 bool timeslice_wait_inf;
247 rb_nativethread_cond_t barrier_complete_cond;
248 rb_nativethread_cond_t barrier_release_cond;
253 unsigned int barrier_joined_cnt;
254 unsigned int barrier_running_cnt;
255 unsigned int barrier_serial;
257 unsigned int barrier_lock_rec;