instance method Rinda::TupleSpace#take

take(tuple, sec = nil) -> Array | Hash[permalink][rdoc]

tuple にマッチするタプルをタプルスペースから取り出して返します。

tuple で指定できるパターンについては rinda/rinda/タプルのパターンについて を参照してください。

マッチするタプルが存在しない場合は、マッチするタプルがタプルスペースに投入されるまで待ちます。

sec でタイムアウト秒数を指定できます。待ち時間が sec 秒を過ぎた時には take をあきらめ例外 Rinda::RequestExpiredError を発生させます。 sec に nil を指定するとタイムアウトせずに無限に待ち続けます。

[PARAM] tuple:
タプルのパターン
[PARAM] sec:
タイムアウト秒数
[EXCEPTION] Rinda::RequestExpiredError:
take がタイムアウトした場合に発生します
[EXCEPTION] Ridna::RequestCanceledError:
take が何らかの理由でキャンセルされた場合に発生します。