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/ノンブロッキングファイバーとスケジューラ
- [PARAM]