-
Notifications
You must be signed in to change notification settings - Fork 14
[DOC] concurrency guide WIP #754
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
d6290e2
to
0297ae8
Compare
0297ae8
to
f382df4
Compare
f382df4
to
65432be
Compare
## The VM Lock | ||
|
||
There's only one VM lock and its for critical sections that can only be entered by one ractor at a time. | ||
Without ractors, the VM lock is useless. It does not stop all ractors from running, as ractors can run |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Noob Q: what's the relationship/difference between the VM Lock
mentioned here and GVL?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is actually explained in a different section.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thx I'm seeing it now. I think it's worth moving it forward as that's likely known by most Ruby devs looking at this doc, and it'd be great to avoid confusion between them as early as possible.
|
||
## The VM Lock | ||
|
||
There's only one VM lock and its for critical sections that can only be entered by one ractor at a time. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's only one VM lock and its for critical sections that can only be entered by one ractor at a time. | |
There's only one VM lock and it's for critical sections that can only be entered by one ractor at a time. |
# Concurrency Guide | ||
|
||
This is a guide to thinking about concurrency in the native cruby source code, whether that's | ||
contributing to Ruby by writing C or Rust. This doesn't touch on native extensions, only the core |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If by Rust you mean YJIT & ZJIT, maybe we can be more specific here? Like `contributing to Ruby interpreter and its JIT compilers (YJIT & ZJIT).
No description provided.