Ruby 2.7.7p221 (2022-11-24 revision 168ec2b1e5ad0e4688e963d9de019557c78feed9)
Public Types | Public Member Functions | Data Fields
rb_thread_struct Struct Reference

#include <rb_mjit_min_header-2.7.7.h>

Public Types

enum  { thread_invoke_type_none = 0 , thread_invoke_type_proc , thread_invoke_type_func }
 
enum  { thread_invoke_type_none = 0 , thread_invoke_type_proc , thread_invoke_type_func }
 

Public Member Functions

 BITFIELD (enum rb_thread_status, status, 2)
 

Data Fields

struct list_node vmlt_node
 
VALUE self
 
rb_vm_tvm
 
rb_execution_context_tec
 
VALUE last_status
 
struct rb_calling_infocalling
 
VALUE top_self
 
VALUE top_wrapper
 
rb_nativethread_id_t thread_id
 
enum rb_thread_status status: 2
 
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
 
native_thread_data_t native_thread_data
 
voidblocking_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
 
rb_thread_list_tjoin_list
 
union {
   struct {
      VALUE   proc
 
      VALUE   args
 
      int   kw_splat
 
   }   proc
 
   struct {
      VALUE(*   func )(void *)
 
      void *   arg
 
   }   func
 
invoke_arg
 
enum rb_thread_struct:: { ... }  invoke_type
 
VALUE stat_insn_usage
 
rb_fiber_troot_fiber
 
rb_jmpbuf_t root_jmpbuf
 
VALUE name
 
union {
   struct {
      VALUE   proc
 
      VALUE   args
 
      int   kw_splat
 
   }   proc
 
   struct {
      VALUE(*   func )(void *)
 
      void *   arg
 
   }   func
 
invoke_arg
 
enum rb_thread_struct:: { ... }  invoke_type
 

Detailed Description

Definition at line 9982 of file rb_mjit_min_header-2.7.7.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
thread_invoke_type_none 
thread_invoke_type_proc 
thread_invoke_type_func 

Definition at line 975 of file vm_core.h.

◆ anonymous enum

anonymous enum
Enumerator
thread_invoke_type_none 
thread_invoke_type_proc 
thread_invoke_type_func 

Definition at line 10021 of file rb_mjit_min_header-2.7.7.h.

Member Function Documentation

◆ BITFIELD()

rb_thread_struct::BITFIELD ( enum  rb_thread_status,
status  ,
 
)

Field Documentation

◆ abort_on_exception

unsigned int rb_thread_struct::abort_on_exception

Definition at line 9994 of file rb_mjit_min_header-2.7.7.h.

◆ arg

void* rb_thread_struct::arg

Definition at line 10018 of file rb_mjit_min_header-2.7.7.h.

◆ args

VALUE rb_thread_struct::args

Definition at line 10013 of file rb_mjit_min_header-2.7.7.h.

◆ blocking_region_buffer

void * rb_thread_struct::blocking_region_buffer

Definition at line 10000 of file rb_mjit_min_header-2.7.7.h.

Referenced by rb_thread_call_with_gvl(), and ruby_thread_has_gvl_p().

◆ calling

struct rb_calling_info * rb_thread_struct::calling

Definition at line 9988 of file rb_mjit_min_header-2.7.7.h.

◆ ec

rb_execution_context_t * rb_thread_struct::ec

◆ func [1/3]

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

Definition at line 10017 of file rb_mjit_min_header-2.7.7.h.

◆  [2/3]

struct { ... } rb_thread_struct::func

◆  [3/3]

struct { ... } rb_thread_struct::func

◆ interrupt_lock

rb_nativethread_lock_t rb_thread_struct::interrupt_lock

Definition at line 10005 of file rb_mjit_min_header-2.7.7.h.

◆  [1/2]

union { ... } rb_thread_struct::invoke_arg

◆  [2/2]

union { ... } rb_thread_struct::invoke_arg

◆  [1/2]

enum { ... } rb_thread_struct::invoke_type

◆  [2/2]

enum { ... } rb_thread_struct::invoke_type

◆ join_list

rb_thread_list_t * rb_thread_struct::join_list

Definition at line 10009 of file rb_mjit_min_header-2.7.7.h.

◆ keeping_mutexes

struct rb_mutex_struct * rb_thread_struct::keeping_mutexes

◆ kw_splat

int rb_thread_struct::kw_splat

Definition at line 10014 of file rb_mjit_min_header-2.7.7.h.

◆ last_status

VALUE rb_thread_struct::last_status

Definition at line 9987 of file rb_mjit_min_header-2.7.7.h.

Referenced by rb_last_status_set().

◆ locking_mutex

VALUE rb_thread_struct::locking_mutex

Definition at line 10007 of file rb_mjit_min_header-2.7.7.h.

◆ name

VALUE rb_thread_struct::name

Definition at line 10029 of file rb_mjit_min_header-2.7.7.h.

◆ native_thread_data

native_thread_data_t rb_thread_struct::native_thread_data

Definition at line 9999 of file rb_mjit_min_header-2.7.7.h.

◆ pending_interrupt_mask_stack

VALUE rb_thread_struct::pending_interrupt_mask_stack

Definition at line 10004 of file rb_mjit_min_header-2.7.7.h.

◆ pending_interrupt_queue

VALUE rb_thread_struct::pending_interrupt_queue

◆ pending_interrupt_queue_checked

unsigned int rb_thread_struct::pending_interrupt_queue_checked

Definition at line 9996 of file rb_mjit_min_header-2.7.7.h.

Referenced by rb_threadptr_pending_interrupt_enque().

◆ priority

int8_t rb_thread_struct::priority

Definition at line 9997 of file rb_mjit_min_header-2.7.7.h.

◆ proc [1/3]

VALUE rb_thread_struct::proc

Definition at line 10012 of file rb_mjit_min_header-2.7.7.h.

◆  [2/3]

struct { ... } rb_thread_struct::proc

◆  [3/3]

struct { ... } rb_thread_struct::proc

◆ report_on_exception

unsigned int rb_thread_struct::report_on_exception

Definition at line 9995 of file rb_mjit_min_header-2.7.7.h.

◆ root_fiber

rb_fiber_t * rb_thread_struct::root_fiber

◆ root_jmpbuf

rb_jmpbuf_t rb_thread_struct::root_jmpbuf

Definition at line 10028 of file rb_mjit_min_header-2.7.7.h.

◆ running_time_us

uint32_t rb_thread_struct::running_time_us

Definition at line 9998 of file rb_mjit_min_header-2.7.7.h.

◆ self

VALUE rb_thread_struct::self

Definition at line 9984 of file rb_mjit_min_header-2.7.7.h.

Referenced by rb_fiber_start(), rb_thread_list(), and rb_vm_mark().

◆ stat_insn_usage

VALUE rb_thread_struct::stat_insn_usage

Definition at line 10026 of file rb_mjit_min_header-2.7.7.h.

◆ status

enum rb_thread_status rb_thread_struct::status

Definition at line 9992 of file rb_mjit_min_header-2.7.7.h.

Referenced by rb_thread_list(), and rb_thread_sleep_interruptible().

◆ thgroup

VALUE rb_thread_struct::thgroup

Definition at line 10001 of file rb_mjit_min_header-2.7.7.h.

◆ thread_id

rb_nativethread_id_t rb_thread_struct::thread_id

Definition at line 9991 of file rb_mjit_min_header-2.7.7.h.

Referenced by rb_vmdebug_stack_dump_all_threads().

◆ to_kill

unsigned int rb_thread_struct::to_kill

Definition at line 9993 of file rb_mjit_min_header-2.7.7.h.

◆ top_self

VALUE rb_thread_struct::top_self

Definition at line 9989 of file rb_mjit_min_header-2.7.7.h.

Referenced by rb_eval_string_wrap().

◆ top_wrapper

VALUE rb_thread_struct::top_wrapper

Definition at line 9990 of file rb_mjit_min_header-2.7.7.h.

Referenced by rb_eval_string_wrap(), and rb_set_end_proc().

◆ unblock

struct rb_unblock_callback rb_thread_struct::unblock

Definition at line 10006 of file rb_mjit_min_header-2.7.7.h.

Referenced by rb_thread_call_with_gvl().

◆ value

VALUE rb_thread_struct::value

Definition at line 10002 of file rb_mjit_min_header-2.7.7.h.

◆ vm

rb_vm_t * rb_thread_struct::vm

◆ vmlt_node

struct list_node rb_thread_struct::vmlt_node

Definition at line 9983 of file rb_mjit_min_header-2.7.7.h.


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