Ruby: rb_ractor_struct Struct Reference

Ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c52d4d35cc6a173c89eda98ceffa2dcf)

Data Structures | Public Types | Data Fields
rb_ractor_struct Struct Reference

`#include <ractor_core.h>`

## Data Structures
struct | gc_mark_func_data_struct

## Public Types
enum | ractor_status { ractor_created , ractor_running , ractor_blocking , ractor_terminated }

## Data Fields
struct rb_ractor_pub | pub
struct rb_ractor_sync | sync
VALUE | receiving_mutex
bool | yield_atexit
rb_nativethread_cond_t | barrier_wait_cond
struct {
struct list_head set
unsigned int cnt
unsigned int blocking_cnt
unsigned int sleeper
rb_global_vm_lock_t gvl
rb_execution_context_t * running_ec
rb_thread_t * main
} | threads
VALUE | thgroup_default
VALUE | name
VALUE | loc
enum rb_ractor_struct::ractor_status | status_
struct list_node | vmlr_node
st_table * | local_storage
struct rb_id_table * | idkey_local_storage
VALUE | r_stdin
VALUE | r_stdout
VALUE | r_stderr
VALUE | verbose
VALUE | debug
rb_ractor_newobj_cache_t | newobj_cache
struct rb_ractor_struct::gc_mark_func_data_struct * | mfd

## Detailed Description

Definition at line 82 of file ractor_core.h.

## Member Enumeration Documentation

## ◆ ractor_status

enum rb_ractor_struct::ractor_status

Enumerator
ractor_created |
ractor_running |
ractor_blocking |
ractor_terminated |

Definition at line 122 of file ractor_core.h.

## Field Documentation

## ◆ barrier_wait_cond

rb_nativethread_cond_t rb_ractor_struct::barrier_wait_cond

Definition at line 90 of file ractor_core.h.

Referenced by rb_vm_barrier().

## ◆ blocking_cnt

unsigned int rb_ractor_struct::blocking_cnt

Definition at line 96 of file ractor_core.h.

Referenced by rb_ractor_blocking_threads_dec(), rb_ractor_blocking_threads_inc(), and rb_ractor_living_threads_init().

## ◆ cnt

unsigned int rb_ractor_struct::cnt

Definition at line 95 of file ractor_core.h.

Referenced by rb_ractor_blocking_threads_dec(), rb_ractor_blocking_threads_inc(), rb_ractor_living_thread_num(), rb_ractor_living_threads_init(), rb_ractor_living_threads_insert(), rb_ractor_living_threads_remove(), rb_ractor_thread_list(), and rb_vm_each_stack_value().

## ◆ debug

VALUE rb_ractor_struct::debug

Definition at line 140 of file ractor_core.h.

Referenced by rb_ruby_debug_ptr().

## ◆ gvl

rb_global_vm_lock_t rb_ractor_struct::gvl

Definition at line 98 of file ractor_core.h.

Referenced by rb_ractor_gvl().

## ◆ idkey_local_storage

struct rb_id_table* rb_ractor_struct::idkey_local_storage

Definition at line 134 of file ractor_core.h.

## ◆ loc

VALUE rb_ractor_struct::loc

Definition at line 105 of file ractor_core.h.

Referenced by rb_ractor_main_alloc().

## ◆ local_storage

st_table* rb_ractor_struct::local_storage

Definition at line 133 of file ractor_core.h.

## ◆ main

rb_thread_t* rb_ractor_struct::main

Definition at line 100 of file ractor_core.h.

Referenced by rb_ractor_main_setup(), rb_ractor_teardown(), rb_ractor_terminate_interrupt_main_thread(), and rb_thread_terminate_all().

## ◆ mfd

struct rb_ractor_struct::gc_mark_func_data_struct * rb_ractor_struct::mfd

Referenced by rb_objspace_reachable_objects_from().

## ◆ name

VALUE rb_ractor_struct::name

Definition at line 104 of file ractor_core.h.

Referenced by rb_ractor_main_alloc().

## ◆ newobj_cache

rb_ractor_newobj_cache_t rb_ractor_struct::newobj_cache

Definition at line 142 of file ractor_core.h.

## ◆ pub

struct rb_ractor_pub rb_ractor_struct::pub

Definition at line 83 of file ractor_core.h.

Referenced by rb_ractor_dump(), rb_ractor_living_threads_insert(), rb_ractor_main_alloc(), rb_ractor_main_setup(), rb_ractor_stderr_set(), rb_ractor_stdin_set(), rb_ractor_stdout_set(), and rb_raw_obj_info().

## ◆ r_stderr

VALUE rb_ractor_struct::r_stderr

Definition at line 138 of file ractor_core.h.

Referenced by rb_ractor_stderr(), and rb_ractor_stderr_set().

## ◆ r_stdin

VALUE rb_ractor_struct::r_stdin

Definition at line 136 of file ractor_core.h.

Referenced by rb_ractor_stdin(), and rb_ractor_stdin_set().

## ◆ r_stdout

VALUE rb_ractor_struct::r_stdout

Definition at line 137 of file ractor_core.h.

Referenced by rb_ractor_stdout(), and rb_ractor_stdout_set().

## ◆ receiving_mutex

VALUE rb_ractor_struct::receiving_mutex

Definition at line 86 of file ractor_core.h.

## ◆ running_ec

rb_execution_context_t* rb_ractor_struct::running_ec

Definition at line 99 of file ractor_core.h.

Referenced by rb_ractor_vm_barrier_interrupt_running_thread(), and rb_vm_main_ractor_ec().

## ◆ set

struct list_head rb_ractor_struct::set

Definition at line 94 of file ractor_core.h.

Referenced by rb_ractor_living_threads_init(), rb_ractor_living_threads_insert(), rb_ractor_thread_list(), rb_vm_each_stack_value(), and rb_vmdebug_stack_dump_all_threads().

## ◆ sleeper

unsigned int rb_ractor_struct::sleeper

Definition at line 97 of file ractor_core.h.

## ◆ status_

enum rb_ractor_struct::ractor_status rb_ractor_struct::status_

Referenced by rb_ractor_dump().

## ◆ sync

struct rb_ractor_sync rb_ractor_struct::sync

Definition at line 85 of file ractor_core.h.

## ◆ thgroup_default

VALUE rb_ractor_struct::thgroup_default

Definition at line 102 of file ractor_core.h.

Referenced by Init_Thread().

## ◆

struct { ... } rb_ractor_struct::threads

Referenced by rb_ractor_blocking_threads_dec(), rb_ractor_blocking_threads_inc(), rb_ractor_gvl(), rb_ractor_living_thread_num(), rb_ractor_living_threads_init(), rb_ractor_living_threads_insert(), rb_ractor_living_threads_remove(), rb_ractor_main_setup(), rb_ractor_teardown(), rb_ractor_terminate_interrupt_main_thread(), rb_ractor_thread_list(), rb_ractor_vm_barrier_interrupt_running_thread(), rb_thread_terminate_all(), rb_vm_each_stack_value(), rb_vm_main_ractor_ec(), and rb_vmdebug_stack_dump_all_threads().

## ◆ verbose

VALUE rb_ractor_struct::verbose

Definition at line 139 of file ractor_core.h.

Referenced by rb_ruby_verbose_ptr().

## ◆ vmlr_node

struct list_node rb_ractor_struct::vmlr_node

Definition at line 129 of file ractor_core.h.

## ◆ yield_atexit

bool rb_ractor_struct::yield_atexit

Definition at line 87 of file ractor_core.h.

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

- ractor_core.h