1 #ifndef INTERNAL_THREAD_H
2 #define INTERNAL_THREAD_H
17 #define COVERAGE_INDEX_LINES 0
18 #define COVERAGE_INDEX_BRANCHES 1
19 #define COVERAGE_TARGET_LINES 1
20 #define COVERAGE_TARGET_BRANCHES 2
21 #define COVERAGE_TARGET_METHODS 4
22 #define COVERAGE_TARGET_ONESHOT_LINES 8
26 void rb_thread_execute_interrupts(
VALUE th);
27 VALUE rb_get_coverages(
void);
28 int rb_get_coverage_mode(
void);
29 VALUE rb_default_coverage(
int);
30 VALUE rb_thread_shield_new(
void);
31 bool rb_thread_shield_owned(
VALUE self);
35 int rb_thread_to_be_killed(
VALUE thread);
36 void rb_mutex_allow_trap(
VALUE self,
int val);
40 int rb_thread_wait_for_single_fd(
int fd,
int events,
struct timeval * timeout);
42 RUBY_SYMBOL_EXPORT_BEGIN
44 VALUE rb_thread_io_blocking_region(rb_blocking_function_t *func,
void *data1,
int fd);
47 int ruby_thread_has_gvl_p(
void);
48 RUBY_SYMBOL_EXPORT_END
50 MJIT_SYMBOL_EXPORT_BEGIN
51 int rb_threadptr_execute_interrupts(
struct rb_thread_struct *th,
int blocking_timing);
52 MJIT_SYMBOL_EXPORT_END
uintptr_t VALUE
Type that represents a Ruby object.