るりまサーチ (Ruby 2.7.0)

最速Rubyリファレンスマニュアル検索!
2件ヒット [1-2件を表示] (0.164秒)
トップページ > 種類:インスタンスメソッド[x] > クエリ:l[x] > バージョン:2.7.0[x] > クエリ:p[x] > クエリ:raise[x] > クエリ:-[x] > クラス:Fiber[x]

別のキーワード

  1. openssl p
  2. openssl p=
  3. fileutils mkdir_p
  4. matrix p
  5. rsa p

ライブラリ

検索結果

Fiber#raise(exception, message = nil, backtrace = nil) -> object (55288.0)

selfが表すファイバーが最後に Fiber.yield を呼んだ場所で例外を発生させます。

...selfが表すファイバーが最後に Fiber.yield を呼んだ場所で例外を発生させます。

Fiber
.yield が呼ばれていないかファイバーがすでに終了している場合、
Fiber
Error が発生します。

引数を渡さない場合、RuntimeError が発生します。...
...で指定します。

//emlist[例][ruby]{
f = Fiber.new { Fiber.yield }
f.resume
f.raise "Error!" # => Error! (RuntimeError)
//}

//emlist[ファイバー内のイテレーションを終了させる例][ruby]{
f = Fiber.new do
loop do
Fiber
.yield(:loop)
end
:exit
end

p f.resume...

Fiber#resume(*arg = nil) -> object (679.0)

自身が表すファイバーへコンテキストを切り替えます。 自身は resume を呼んだファイバーの子となります。

...なります。

ただし、Fiber#transfer を呼び出した後に resume を呼び出す事はでき
ません。

@param arg self が表すファイバーに渡したいオブジェクトを指定します。

@return コンテキストの切り替えの際に Fiber.yield に与えられた引...
...
を返します。ブロックの終了まで実行した場合はブロックの評価結果
を返します。

@raise FiberError 自身が既に終了している場合、コンテキストの切替が
Thread クラスが表すスレッド間をまたがる...
...また、Fiber#transfer を呼び出した後に resume を
呼び出した場合に発生します。

//emlist[例:][ruby]{

f = Fiber.new do
Fiber
.yield(:hoge)
:fuga
end

p f.resume() #=> :hoge
p f.resume() #=> :fuga
p f.resume() #=> FiberError: dead fiber called
//}...