るりまサーチ

最速Rubyリファレンスマニュアル検索!
18件ヒット [1-18件を表示] (0.003秒)
トップページ > クラス:Fiber[x] > ライブラリ:fiber[x]

キーワード

検索結果

Fiber#alive? -> bool (3.0)

ファイバーが「生きている」時、真を返します。

...は以下の場合です。

* まだ Fiber#resume されていない
* ブロック内の評価が終了していない (Fiber.yield が呼ばれていない)

例:

fr = Fiber.new{
Fiber
.yield
"a"
}

p fr.alive? # => true
fr.resume # Fiber.yieldで戻ってくる
p fr.alive...

Fiber#transfer(*args) -> object (3.0)

自身が表すファイバーへコンテキストを切り替えます。

...表すファイバーへコンテキストを切り替えます。

自身は Fiber#resume を呼んだファイバーの子となります。
Fiber
#resume との違いは、ファイバーが終了したときや Fiber.yield が呼ばれたときは、
ファイバーの親へ戻らずにメイン...
...ァイバーから呼び出した Fiber#resume メソッドの返り値として渡したいオブジェクトを指定します。

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

@raise FiberError 自身が既に終了してい...
...がる場合、
Fiber
#resume を呼んだファイバーがその親か先祖である場合に発生します。

例:

require 'fiber'

fr1 = Fiber.new do |v|
:fugafuga
end

fr2 = Fiber.new do |v|
fr1.transfer
:fuga
end

fr3 = Fiber.new do |v|
fr...

Fiber.current -> Fiber (3.0)

このメソッドが評価されたコンテキストにおける Fiber のインスタンスを返します。

...ッドが評価されたコンテキストにおける Fiber のインスタンスを返します。

例:

fr = Fiber.new do
Fiber
.current
end

fb = fr.resume
p fb.equal?(fr) # => true

p Fiber.current # => #<Fiber:0x91345e4>
p Fiber.current # => #<Fiber:0x91345e4>...