Ruby: thread_none.h Source File

Ruby 3.4.8p72 (2025-12-17 revision 995b59f66677d44767ce9faac6957e5543617ff9)

thread_none.h
1#ifndef RUBY_THREAD_NONE_H
2#define RUBY_THREAD_NONE_H
3
4#define RB_NATIVETHREAD_LOCK_INIT (void)(0)
5#define RB_NATIVETHREAD_COND_INIT (void)(0)
6
7// no-thread impl doesn't use TLS but define this to avoid using tls key
8// based implementation in vm.c
9#define RB_THREAD_LOCAL_SPECIFIER
10
11 struct rb_native_thread {
12 void *thread_id; // NULL
13};
14
15 struct rb_thread_sched_item {};
16 struct rb_thread_sched {};
17
18 RUBY_EXTERN struct rb_execution_context_struct *ruby_current_ec;
19NOINLINE(struct rb_execution_context_struct *rb_current_ec_noinline(void)); // for assertions
20
21#endif /* RUBY_THREAD_NONE_H */
RUBY_EXTERN
#define RUBY_EXTERN
Declaration of externally visible global variables.
Definition dllexport.h:45
rb_execution_context_struct
Definition vm_core.h:1022
rb_native_thread
Definition thread_none.h:11
rb_thread_sched_item
Definition thread_none.h:15
rb_thread_sched
Definition thread_none.h:16