singleton method Fiber.yield

yield(*arg = nil) -> object[permalink][rdoc][edit]

現在のファイバーの親にコンテキストを切り替えます。

コンテキストの切り替えの際に Fiber#resume に与えられた引数を yield メソッドは返します。

[PARAM] arg:
現在のファイバーの親に渡したいオブジェクトを指定します。
[EXCEPTION] FiberError:
Fiber でのルートファイバーで呼ばれた場合に発生します。

例:

a = nil
f = Fiber.new do
  a = Fiber.yield()
end

f.resume()
f.resume(:foo)

p a  #=> :foo