Ruby 4.1 リファレンスマニュアル

singleton method Fiber.set_scheduler

set_scheduler(scheduler) -> objectRuby 3.0 から[permalink][rdoc][edit]

現在のスレッドにスケジューラを設定します。

スケジューラを設定すると、ノンブロッキングファイバーの中でブロックしうる操作を行った際に、スケジューラのフックメソッドが呼ばれるようになります。またスレッドの終了時にスケジューラの close メソッドが呼ばれ、終了していないファイバーの後始末ができるようになっています。

[PARAM] scheduler:
スケジューラとして振る舞うオブジェクトを指定します。 nil を指定するとスケジューラを解除します。
[RETURN]
scheduler をそのまま返します。
[EXCEPTION] ArgumentError:
scheduler が必要なフックメソッドを実装していない場合に発生します。
Fiber.set_scheduler(Object.new) # ~> ArgumentError: Scheduler must implement #block

[SEE_ALSO] Fiber.scheduler, Fiber.schedule, Fiber/ノンブロッキングファイバーとスケジューラ