Ruby 3.2.4p170 (2024-04-23 revision af471c0e0127eea0cafa6f308c0425bbfab0acf5)
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_tractor
 
rb_vm_tvm
 
struct rb_native_threadnt
 
rb_execution_context_tec
 
struct rb_thread_sched_item sched
 
rb_atomic_t serial
 
VALUE last_status
 
struct rb_calling_infocalling
 
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_structkeeping_mutexes
 
struct rb_waiting_listjoin_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_troot_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: