るりまサーチ

最速Rubyリファレンスマニュアル検索!
90件ヒット [1-90件を表示] (0.096秒)
トップページ > クエリ:r[x] > クエリ:FiberError[x]

別のキーワード

  1. _builtin to_r
  2. open3 pipeline_r
  3. matrix elements_to_r
  4. fileutils rm_r
  5. bigdecimal to_r

ライブラリ

クラス

キーワード

検索結果

FiberError (44000.0)

Fiber に関するエラーが起きると発生します。

...Fiber に関するエラーが起きると発生します。...

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

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

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

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

引数を渡さない場合、RuntimeError が発生します。
message 引...
...数を渡した場合、message 引数をメッセージとした RuntimeError
が発生します。

その他のケースでは、最初の引数は Exception か Exception
のインスタンスを返す exception メソッドを持ったオブジェクトである
必要があります。
この...
...@param message 例外のメッセージとなる文字列です。
@param exception 発生させる例外です。
@param backtrace 例外発生時のスタックトレースです。文字列の配列で指定します。

//emlist[例][ruby]{
f = Fiber.new { Fiber.yield }
f.resume
f.raise "Error!"...

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

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

...す。
自身は resume を呼んだファイバーの子となります。

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

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

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

@raise FiberError 自身が既に終了している場合、コンテキストの切替が
Thread クラス...
... resume を
呼んだファイバーの親かその祖先である場合に発生します。
また、Fiber#transfer を呼び出した後に resume を
呼び出した場合に発生します。

//emlist[例:][ruby]{

f = Fiber.new do
Fiber....

Fiber#raise -> object (6106.0)

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

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

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

引数を渡さない場合、RuntimeError が発生します。
message 引...
...数を渡した場合、message 引数をメッセージとした RuntimeError
が発生します。

その他のケースでは、最初の引数は Exception か Exception
のインスタンスを返す exception メソッドを持ったオブジェクトである
必要があります。
この...
...@param message 例外のメッセージとなる文字列です。
@param exception 発生させる例外です。
@param backtrace 例外発生時のスタックトレースです。文字列の配列で指定します。

//emlist[例][ruby]{
f = Fiber.new { Fiber.yield }
f.resume
f.raise "Error!"...

Fiber#raise(message) -> object (6106.0)

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

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

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

引数を渡さない場合、RuntimeError が発生します。
message 引...
...数を渡した場合、message 引数をメッセージとした RuntimeError
が発生します。

その他のケースでは、最初の引数は Exception か Exception
のインスタンスを返す exception メソッドを持ったオブジェクトである
必要があります。
この...
...@param message 例外のメッセージとなる文字列です。
@param exception 発生させる例外です。
@param backtrace 例外発生時のスタックトレースです。文字列の配列で指定します。

//emlist[例][ruby]{
f = Fiber.new { Fiber.yield }
f.resume
f.raise "Error!"...

絞り込み条件を変える

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

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

...

自身は Fiber#resume を呼んだファイバーの子となります。
Fiber#resume との違いは、ファイバーが終了したときや Fiber.yield が呼ばれたときは、
ファイバーの親へ戻らずにメインファイバーへ戻ります。

@param args メインファ...
...イバーから呼び出した Fiber#resume メソッドの返り値として渡したいオブジェクトを指定します。

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

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

//emlist[例:][ruby]{
r
equire 'fiber'

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

fr2 = Fiber.new do |v|
fr1.transfer
:fug...

Fiber (6018.0)

ノンプリエンプティブな軽量スレッド(以下ファイバーと呼ぶ)を提供します。 他の言語では coroutine あるいは semicoroutine と呼ばれることもあります。 Thread と違いユーザレベルスレッドとして実装されています。

...ファイバーと呼ぶ)を提供します。
他の言語では coroutine あるいは semicoroutine と呼ばれることもあります。
Thread と違いユーザレベルスレッドとして実装されています。

Thread クラスが表すスレッドと違い、明示的に指定しな...
...持ちます。Fiber#resume を呼んだファイバーが親になり
呼ばれたファイバーが子になります。親子関係を壊すような遷移(例えば
自分の親の親のファイバーへ切り替えるような処理)はできません。
例外 FiberError が発生します。...
...できることは
* Fiber#resume により子へコンテキストを切り替える
* Fiber.yield により親へコンテキストを切り替える
の二通りです。この親子関係は一時的なものであり
親ファイバーへコンテキストを切り替えた時点で解消さ...

Enumerator (6006.0)

each 以外のメソッドにも Enumerable の機能を提供するためのラッパークラスです。 また、外部イテレータとしても使えます。

...erable の機能を提供するためのラッパークラスです。
また、外部イテレータとしても使えます。

Enumerable モジュールは、 Module#include 先のクラスが持つ
each メソッドを元に様々なメソッドを提供します。
例えば Array#map は Arra...
...ます。
Enumerator を介することにより String#each_byte のような
異なる名前のイテレータについても each と同様に Enumerable の機能を利用できます。

Enumerator を生成するには Enumerator.newあるいは
Object#to_enum, Object#enum_for を利用しま...
...er と同じ制限があります。
例えば以下のようなスレッドをまたいだ呼び出しはエラーになります。

//emlist[例][ruby]{
a = nil
Thread.new do
a = [1, 2, 3].each
a.next
end.join

p a.next
#=> t.rb:7:in `next': fiber called across threads (FiberError)
# fro...

Fiber.yield(*arg = nil) -> object (3106.0)

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

...Fiber#resume に与えられた引数を yield メソッドは返します。

@param arg 現在のファイバーの親に渡したいオブジェクトを指定します。

@raise FiberError Fiber でのルートファイバーで呼ばれた場合に発生します。


//emlist[例:][ruby]{
a...
...= nil
f = Fiber.new do
a = Fiber.yield()
end

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

p a #=> :foo
//}...