diff options
author | Samuel Williams <samuel.williams@oriontransfer.co.nz> | 2022-10-06 23:00:49 +1300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-10-06 23:00:49 +1300 |
commit | e696ec67ac7bd14ff8436f9ee7724c17c5bf6689 (patch) | |
tree | f1388ed0cc30ceec2e5febf316c3897afa01b9ad /test/fiber | |
parent | 75a53f6be0bdd02fcf70a352892e085a02995cf9 (diff) |
Introduce `Fiber.blocking{}` for bypassing the fiber scheduler. (#6498)
Notes
Notes:
Merged-By: ioquatix <samuel@codeotaku.com>
Diffstat (limited to 'test/fiber')
-rw-r--r-- | test/fiber/test_scheduler.rb | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/test/fiber/test_scheduler.rb b/test/fiber/test_scheduler.rb index 4b1310f0a6..1d5881e233 100644 --- a/test/fiber/test_scheduler.rb +++ b/test/fiber/test_scheduler.rb @@ -27,6 +27,17 @@ class TestFiberScheduler < Test::Unit::TestCase refute f.blocking? end + def test_fiber_blocking + f = Fiber.new(blocking: false) do + fiber = Fiber.current + refute fiber.blocking? + Fiber.blocking do |_fiber| + assert_equal fiber, _fiber + assert fiber.blocking? + end + end + end + def test_closed_at_thread_exit scheduler = Scheduler.new |