diff options
author | Koichi Sasada <[email protected]> | 2022-04-17 03:40:23 +0900 |
---|---|---|
committer | Koichi Sasada <[email protected]> | 2022-04-22 07:54:09 +0900 |
commit | 1c4fc0241d125879e1e5169f267f26637772f3a7 (patch) | |
tree | d23704a9fc31fe8bfb29835ce0bdae3dc278b513 /ractor_core.h | |
parent | cb02324c4e5c7aae0add0a5c4e5adbf637d9acb0 (diff) |
rename thread internal naming
Now GVL is not process *Global* so this patch try to use
another words.
* `rb_global_vm_lock_t` -> `struct rb_thread_sched`
* `gvl->owner` -> `sched->running`
* `gvl->waitq` -> `sched->readyq`
* `rb_gvl_init` -> `rb_thread_sched_init`
* `gvl_destroy` -> `rb_thread_sched_destroy`
* `gvl_acquire` -> `thread_sched_to_running` # waiting -> ready -> running
* `gvl_release` -> `thread_sched_to_waiting` # running -> waiting
* `gvl_yield` -> `thread_sched_yield`
* `GVL_UNLOCK_BEGIN` -> `THREAD_BLOCKING_BEGIN`
* `GVL_UNLOCK_END` -> `THREAD_BLOCKING_END`
* removed
* `rb_ractor_gvl`
* `rb_vm_gvl_destroy` (not used)
There are GVL functions such as `rb_thread_call_without_gvl()` yet
but I don't have good name to replace them. Maybe GVL stands for
"Greate Valuable Lock" or something like that.
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/5814
Diffstat (limited to 'ractor_core.h')
-rw-r--r-- | ractor_core.h | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/ractor_core.h b/ractor_core.h index a3bc90febf..8f0037b3ee 100644 --- a/ractor_core.h +++ b/ractor_core.h @@ -95,7 +95,7 @@ struct rb_ractor_struct { unsigned int cnt; unsigned int blocking_cnt; unsigned int sleeper; - rb_global_vm_lock_t gvl; + struct rb_thread_sched sched; rb_execution_context_t *running_ec; rb_thread_t *main; } threads; @@ -165,7 +165,6 @@ void rb_ractor_send_parameters(rb_execution_context_t *ec, rb_ractor_t *g, VALUE VALUE rb_thread_create_ractor(rb_ractor_t *g, VALUE args, VALUE proc); // defined in thread.c -rb_global_vm_lock_t *rb_ractor_gvl(rb_ractor_t *); int rb_ractor_living_thread_num(const rb_ractor_t *); VALUE rb_ractor_thread_list(rb_ractor_t *r); bool rb_ractor_p(VALUE rv); |