このマニュアルは既にメンテナンスが終了したバージョンの Ruby を対象としています。 最新版のマニュアルへ

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

singleton method Fiber.new

new(blocking: false) {|obj| ... } -> FiberRuby 1.9.3 から[permalink][rdoc][edit]

与えられたブロックとともにファイバーを生成して返します。ブロックは Fiber#resume に与えられた引数をその引数として実行されます。

ブロックが終了した場合は親にコンテキストが切り替わります。その時ブロックの評価値が返されます。

[PARAM] blocking:
偽を指定するとノンブロッキングなファイバーを生成します。真を指定するとブロッキングなファイバーを生成します。詳しくは Fiber/ノンブロッキングファイバーとスケジューラ を参照してください。
例:
a = nil
f = Fiber.new do |obj|
  a = obj
  :hoge
end
  
b = f.resume(:foo)
p a  #=> :foo
p b  #=> :hoge