Ruby: rb_thread_struct Struct Reference

Ruby 3.2.5p208 (2024-07-26 revision 31d0f1a2e7dbfb60731d1f05b868e1d578cda493)

Public Types | Public Member Functions | Data Fields
rb_thread_struct Struct Reference

## Public Types
enum | thread_invoke_type { thread_invoke_type_none = 0 , thread_invoke_type_proc , thread_invoke_type_ractor_proc , thread_invoke_type_func }

## Public Member Functions
| BITFIELD (enum rb_thread_status, status, 2)

## Data Fields
struct ccan_list_node | lt_node
VALUE | self
rb_ractor_t * | ractor
rb_vm_t * | vm
struct rb_native_thread * | nt
rb_execution_context_t * | ec
struct rb_thread_sched_item | sched
rb_atomic_t | serial
VALUE | last_status
struct rb_calling_info * | calling
VALUE | top_self
VALUE | top_wrapper
unsigned int | locking_native_thread: 1
unsigned int | to_kill: 1
unsigned int | abort_on_exception: 1
unsigned int | report_on_exception: 1
unsigned int | pending_interrupt_queue_checked: 1
int8_t | priority
uint32_t | running_time_us
void * | blocking_region_buffer
VALUE | thgroup
VALUE | value
VALUE | pending_interrupt_queue
VALUE | pending_interrupt_mask_stack
rb_nativethread_lock_t | interrupt_lock
struct rb_unblock_callback | unblock
VALUE | locking_mutex
struct rb_mutex_struct * | keeping_mutexes
struct rb_waiting_list * | join_list
union { |
struct { |
VALUE proc |
VALUE args |
int kw_splat |
} proc |
struct { |
VALUE(* func )(void *) |
void * arg |
} func |
} | invoke_arg |
enum rb_thread_struct::thread_invoke_type | invoke_type
VALUE | stat_insn_usage
rb_fiber_t * | root_fiber
VALUE | scheduler
unsigned int | blocking
VALUE | name
struct rb_ext_config | ext_config

## Detailed Description

Definition at line 984 of file vm_core.h.

## Member Enumeration Documentation

## ◆ thread_invoke_type

enum rb_thread_struct::thread_invoke_type

Definition at line 1050 of file vm_core.h.

## Field Documentation

## ◆ abort_on_exception

unsigned int rb_thread_struct::abort_on_exception

Definition at line 1010 of file vm_core.h.

## ◆ arg

void* rb_thread_struct::arg

Definition at line 1046 of file vm_core.h.

## ◆ args

VALUE rb_thread_struct::args

Definition at line 1041 of file vm_core.h.

## ◆ blocking

unsigned int rb_thread_struct::blocking

Definition at line 1064 of file vm_core.h.

## ◆ blocking_region_buffer

void* rb_thread_struct::blocking_region_buffer

Definition at line 1016 of file vm_core.h.

## ◆ calling

struct rb_calling_info* rb_thread_struct::calling

Definition at line 998 of file vm_core.h.

## ◆ ec

rb_execution_context_t* rb_thread_struct::ec

Definition at line 990 of file vm_core.h.

## ◆ ext_config

struct rb_ext_config rb_thread_struct::ext_config

Definition at line 1069 of file vm_core.h.

## ◆ func

VALUE(* rb_thread_struct::func) (void *)

Definition at line 1045 of file vm_core.h.

## ◆ interrupt_lock

rb_nativethread_lock_t rb_thread_struct::interrupt_lock

Definition at line 1031 of file vm_core.h.

## ◆ join_list

struct rb_waiting_list* rb_thread_struct::join_list

Definition at line 1036 of file vm_core.h.

## ◆ keeping_mutexes

struct rb_mutex_struct* rb_thread_struct::keeping_mutexes

Definition at line 1034 of file vm_core.h.

## ◆ kw_splat

int rb_thread_struct::kw_splat

Definition at line 1042 of file vm_core.h.

## ◆ last_status

VALUE rb_thread_struct::last_status

Definition at line 995 of file vm_core.h.

## ◆ locking_mutex

VALUE rb_thread_struct::locking_mutex

Definition at line 1033 of file vm_core.h.

## ◆ locking_native_thread

unsigned int rb_thread_struct::locking_native_thread

Definition at line 1008 of file vm_core.h.

## ◆ lt_node

struct ccan_list_node rb_thread_struct::lt_node

Definition at line 985 of file vm_core.h.

## ◆ name

VALUE rb_thread_struct::name

Definition at line 1067 of file vm_core.h.

## ◆ nt

struct rb_native_thread* rb_thread_struct::nt

Definition at line 989 of file vm_core.h.

## ◆ pending_interrupt_mask_stack

VALUE rb_thread_struct::pending_interrupt_mask_stack

Definition at line 1028 of file vm_core.h.

## ◆ pending_interrupt_queue

VALUE rb_thread_struct::pending_interrupt_queue

Definition at line 1027 of file vm_core.h.

## ◆ pending_interrupt_queue_checked

unsigned int rb_thread_struct::pending_interrupt_queue_checked

Definition at line 1012 of file vm_core.h.

## ◆ priority

int8_t rb_thread_struct::priority

Definition at line 1013 of file vm_core.h.

## ◆ proc

VALUE rb_thread_struct::proc

Definition at line 1040 of file vm_core.h.

## ◆ ractor

rb_ractor_t* rb_thread_struct::ractor

Definition at line 987 of file vm_core.h.

## ◆ report_on_exception

unsigned int rb_thread_struct::report_on_exception

Definition at line 1011 of file vm_core.h.

## ◆ root_fiber

rb_fiber_t* rb_thread_struct::root_fiber

Definition at line 1061 of file vm_core.h.

## ◆ running_time_us

uint32_t rb_thread_struct::running_time_us

Definition at line 1014 of file vm_core.h.

## ◆ sched

struct rb_thread_sched_item rb_thread_struct::sched

Definition at line 992 of file vm_core.h.

## ◆ scheduler

VALUE rb_thread_struct::scheduler

Definition at line 1063 of file vm_core.h.

## ◆ self

VALUE rb_thread_struct::self

Definition at line 986 of file vm_core.h.

## ◆ serial

rb_atomic_t rb_thread_struct::serial

Definition at line 993 of file vm_core.h.

## ◆ stat_insn_usage

VALUE rb_thread_struct::stat_insn_usage

Definition at line 1058 of file vm_core.h.

## ◆ thgroup

VALUE rb_thread_struct::thgroup

Definition at line 1018 of file vm_core.h.

## ◆ to_kill

unsigned int rb_thread_struct::to_kill

Definition at line 1009 of file vm_core.h.

## ◆ top_self

VALUE rb_thread_struct::top_self

Definition at line 1001 of file vm_core.h.

## ◆ top_wrapper

VALUE rb_thread_struct::top_wrapper

Definition at line 1002 of file vm_core.h.

## ◆ unblock

struct rb_unblock_callback rb_thread_struct::unblock

Definition at line 1032 of file vm_core.h.

## ◆ value

VALUE rb_thread_struct::value

Definition at line 1019 of file vm_core.h.

## ◆ vm

rb_vm_t* rb_thread_struct::vm

Definition at line 988 of file vm_core.h.

The documentation for this struct was generated from the following file:

- vm_core.h