You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is a feature of Ruby 3.0 where a Fiber can mark itself as being blocked, notify a scheduler of this information, and let the scheduler change the execution to a different fiber. Given that we currently have Fibers but no Threads, this is probably the easiest way into getting some form of concurrency into Natalie.
This is a feature of Ruby 3.0 where a Fiber can mark itself as being blocked, notify a scheduler of this information, and let the scheduler change the execution to a different fiber. Given that we currently have Fibers but no Threads, this is probably the easiest way into getting some form of concurrency into Natalie.
I found some example scripts on https://blog.monotone.dev/ruby/2020/12/25/ruby-3-fiber.html and I want those to work with Natalie.
This does require the following steps:
kernel_sleep
example to work. This requires at least updates to thesleep
method to make the callback (Add Fiber scheduler hooks for Kernel.sleep #1287)io_wait
example to workblock
/unblock
example to work. This probably requires some more primitives in the code, like Mutex and QueueThe text was updated successfully, but these errors were encountered: