るりまサーチ (Ruby 2.3.0)

最速Rubyリファレンスマニュアル検索!
43件ヒット [1-43件を表示] (0.021秒)

別のキーワード

  1. rinda/rinda new
  2. rinda/rinda rinda
  3. rinda/rinda ===
  4. rinda/rinda read
  5. rinda/rinda take

検索結果

Rinda (114145.0)

rinda/rinda および rinda/tuplespace の名前空間を提供する モジュール。

rinda/rinda および rinda/tuplespace の名前空間を提供する
モジュール。

rinda/rinda (36343.0)

Rubyで実装されたタプルスペース(Tuple Space)を扱うためのライブラリです。

Rubyで実装されたタプルスペース(Tuple Space)を扱うためのライブラリです。

タプルスペースとは並列プログラムにおける一つのパターンです。
並列プログラミングにおいては、ロックのような同期処理が必須ですが、
適切な同期処理を実現することは困難をともないます。
このパターンにおいては、複数の並列単位(スレッド/プロセス)間の通信をすべて
タプルスペースという領域を経由して行います。これによって
プロセス間の通信トポロジーを単純化し、問題を簡単化します。
タプルスペースに対しては、タプルを書き込む(write)、取り出す(take)、
タプルの要素を覗き見る(read)
という操作の...

Rinda::RindaError (27049.0)

rinda ライブラリの基底例外クラス

rinda ライブラリの基底例外クラス

rinda/tuplespace (18001.0)

Rubyによるタプル空間(Tuple Space)の実装です。

Rubyによるタプル空間(Tuple Space)の実装です。

Rinda::TupleSpace#write(tuple, sec = nil) -> Rinda::TupleEntry (9424.0)

tuple をタプルスペースに加えます。 tuple を管理するための Rinda::TupleEntry オブジェクトを返します。

tuple をタプルスペースに加えます。
tuple を管理するための Rinda::TupleEntry オブジェクトを返します。

sec で追加したタプルの有効期限を指定できます。
追加されてから sec 秒過ぎたタプルはタプルスペースから削除されます。
nil は無限を意味し、この場合にはタプルは経過時間によっては削除されません。

返り値の Rinda::TupleEntry オブジェクトを使ってタプルを明示的に
キャンセルしたり有効期限を変更したりできます。ただし、利用にはGCなどに
気を付ける必要があります。
詳しくはRinda::TupleEntry のエントリーを見てくださ...

絞り込み条件を変える

Rinda::TupleSpace#notify(event, pattern, sec = nil) -> Rinda::NotifyTemplateEntry (9412.0)

event で指定した種類のイベントの監視を開始します。

event で指定した種類のイベントの監視を開始します。

イベントを生じさせたタプルがpattern にマッチした場合にのみ報告されます。

イベントが生じた場合、
このメソッドの返り値の Rinda::NotifyTemplateEntry を経由し、
Rinda::NotifyTemplateEntry#each を用いて報告を受け取ります。

sec で監視期間を秒数で指定できます。 nil で無限に監視し続けます。

event として以下の3つを指定できます。
* 'write' : タプルが追加された
* 'take' : タプルが take された
* 'delet...

Rinda::TupleSpaceProxy#write(tuple, sec = nil) -> Rinda::TupleEntry (9388.0)

tuple をタプルスペースに加えます。 tuple を管理するための Rinda::TupleEntry オブジェクトを返します。

tuple をタプルスペースに加えます。
tuple を管理するための Rinda::TupleEntry オブジェクトを返します。

内部的にはリモートオブジェクトの Rinda::TupleSpace#write にフォワードされます。
詳細は Rinda::TupleSpace#write を参照してください。

@param tuple 追加する tuple (配列かHash)
@param sec 有効期限(秒数)

Rinda::TupleSpace.new(period = 60) -> Rinda::TupleSpace (9352.0)

Rinda::TupleSpace オブジェクトを生成します。

Rinda::TupleSpace オブジェクトを生成します。

period で掃除用スレッドが動く周期を指定します。
このスレッドでは cancel されたタプルや expire(期限切れ、タイムアウト) された
タプルをタプルスペース内から取り除きます。

@param period cancel/expireされたタプルを取り除く周期を秒で指定します

Rinda::TupleSpaceProxy#notify(ev, tuple, sec = nil) -> Rinda::NotifyTemplateEntry (9340.0)

event で指定した種類のイベントの監視を開始します。

event で指定した種類のイベントの監視を開始します。

内部的にはリモートオブジェクトの Rinda::TupleSpace#notify にフォワードされます。
詳細は Rinda::TupleSpace#notify 参照してください

@param event 監視対象のイベント(文字列)
@param pattern 監視対象となるタプルのパターン
@param sec 監視期間の長さ(秒数)

Rinda::SimpleRenewer.new(sec = 180) -> Rinda::SimpleRenewer (9322.0)

新たな SimpleRenewer オブジェクトを生成します。

新たな SimpleRenewer オブジェクトを生成します。

sec で Rinda::SimpleRenewer#renew が返す秒数を指定します。
@param sec renew が返す秒数

絞り込み条件を変える

Rinda::TupleSpaceProxy.new(ts) -> Rinda::TupleSpaceProxy (9322.0)

ts を wrap した新たな TupleSpaceProxy オブジェクトを生成します。

ts を wrap した新たな TupleSpaceProxy オブジェクトを生成します。

@param ts ラップするリモート Rinda::TupleSpace オブジェクト

Rinda::Template (9109.0)

タプルのマッチングのためのクラスです。 ユーザがこのクラスを直接使うことはありません。

タプルのマッチングのためのクラスです。
ユーザがこのクラスを直接使うことはありません。

=== 例

require 'rinda/rinda'

template = Rinda::Template.new(['abc', nil, nil])
template.match(['abc', 2, 5]) # => true
template.match(['hoge', 2, 5]) # => false

template = Rinda::Template.new([String, Integer, nil])
template.match(['abc', 2, 5...

Rinda::TupleSpace (9073.0)

Tuple Space を表すクラスです。

Tuple Space を表すクラスです。

このクラスのインスタンスを
drb を経由して公開することで
タプルスペースを他のプロセスからアクセスさせることができるようになります。

タプルスペースを drb 経由で利用する側は
DRb::DRbObject.new_with_uri などでこのオブジェクトのリモートオブジェクトを
取得し、Rinda::TupleSpaceProxy をかぶせることで利用します。

===[a:renewer] タプルの寿命と renewer
タプルを Rinda::TupleSpace#write などで追加するときにその寿命を
秒数で指定することができ...

Rinda::TupleSpace#read(tuple, sec=nil) -> [Array|Hash] (9073.0)

タプルスペース内の tuple にマッチするタプルを一つコピーして返します。

タプルスペース内の tuple にマッチするタプルを一つコピーして返します。

このメソッド呼び出しが終了しても、タプルスペースからタプルは取り除かれません。

tuple で指定できるパターンについては lib:rinda/rinda#tuplepattern を
参照してください。

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

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

Rinda::TupleSpace#take(tuple, sec = nil) -> Array | Hash (9073.0)

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

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

tuple で指定できるパターンについては lib:rinda/rinda#tuplepattern を
参照してください。

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

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

@param tuple タプルのパター...

絞り込み条件を変える

Rinda::TupleSpaceProxy (9067.0)

リモートの Rinda::TupleSpace オブジェクトを包む プロクシクラスです。

リモートの Rinda::TupleSpace オブジェクトを包む
プロクシクラスです。

Rinda::TupleSpace#take でタプルの受け渡し時にタプルが
消失する可能性を下げるためのプロクシクラスです。

Rinda::TupleSpaceProxy#read(tuple, sec=nil) -> [Array|Hash] (9055.0)

タプルスペース内の tuple にマッチするタプルを一つコピーして返します。

タプルスペース内の tuple にマッチするタプルを一つコピーして返します。

内部的にはリモートオブジェクトの Rinda::TupleSpace#read にフォワードされます。
詳細は Rinda::TupleSpace#read を参照してください。

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

Rinda::TupleSpaceProxy#take(tuple, sec = nil) -> Array | Hash (9055.0)

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

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

内部的にはリモートオブジェクトの Rinda::TupleSpace#take にフォワードされます。
詳細は Rinda::TupleSpace#take を参照してください。

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

Rinda::InvalidHashTupleKey (9049.0)

Rinda::TupleSpace#write などで不正なハッシュテーブル(キーが 文字列でないもの)をタプルスペースに書き込もうとすると発生すると発生する 例外です。

Rinda::TupleSpace#write などで不正なハッシュテーブル(キーが
文字列でないもの)をタプルスペースに書き込もうとすると発生すると発生する
例外です。

Rinda::RequestCanceledError (9049.0)

rinda で take などのリクエストが何らかの理由でキャンセルされた ことを意味する例外クラス。

rinda で take などのリクエストが何らかの理由でキャンセルされた
ことを意味する例外クラス。

絞り込み条件を変える

Rinda::RequestExpiredError (9049.0)

rinda で take などのリクエストがタイムアウトしたことを 意味する例外クラス。

rinda で take などのリクエストがタイムアウトしたことを
意味する例外クラス。

Rinda::SimpleRenewer (9037.0)

シンプルな renewer で renewer のサンプル実装です。

シンプルな renewer で renewer のサンプル実装です。

Rinda::TupleSpace が保持するタプルの有効期限を更新するクラスです。
このクラスはタプルの寿命をプロセスの寿命と一致させることができます。
詳しくは Rinda::TupleSpace#renewer を見てください。

Rinda::TupleEntry#[](key) (9037.0)

タプルの key に対応する要素を返します。

タプルの key に対応する要素を返します。

Rinda::TupleEntry#value[key] を返します。

@param key 要素を指定するキー

@see Rinda::TupleEntry#fetch

Rinda::TupleEntry#alive? -> bool (9037.0)

タプルが有効である(期限切れでもなく、キャンセルされていない)ならば 真を返します。

タプルが有効である(期限切れでもなく、キャンセルされていない)ならば
真を返します。

@see Rinda::TupleEntry#canceled?, Rinda::TupleEntry#expired?

Rinda::TupleEntry#expired? -> bool (9037.0)

タプルが既に期限切れになっているならば真を返します。

タプルが既に期限切れになっているならば真を返します。

@see Rinda::TupleEntry#expires, @see Rinda::TupleEntry#renew

絞り込み条件を変える

Rinda::TupleEntry#fetch(key) -> object (9037.0)

タプルの key に対応する要素を返します。

タプルの key に対応する要素を返します。

Rinda::TupleEntry#value.fetch(key) を返します。

@param key 要素を指定するキー

@see Rinda::TupleEntry#[]

Rinda::TupleSpace#read_all(tuple) -> [Array|Hash] (9037.0)

タプルスペース内の tuple にマッチするタプルをすべてコピーして返します。

タプルスペース内の tuple にマッチするタプルをすべてコピーして返します。

このメソッド呼び出しが終了しても、タプルスペースからタプルは取り除かれません。

tuple で指定できるパターンについては lib:rinda/rinda#tuplepattern を
参照してください。

マッチするタプルが存在しない場合は、待たずに空の配列を返します。

このメソッドは主にデバッグのための利用を想定しています。

@param tuple タプルのパターン

Rinda::TupleSpaceProxy#read_all(tuple) -> [Array|Hash] (9037.0)

タプルスペース内の tuple にマッチするタプルをすべてコピーして返します。

タプルスペース内の tuple にマッチするタプルをすべてコピーして返します。

内部的にはリモートオブジェクトの Rinda::TupleSpace#read_all にフォワードされます。
詳細は Rinda::TupleSpace#read_all を参照してください。

@param tuple タプルのパターン

Rinda::SimpleRenewer#renew -> Integer (9019.0)

TupleSpace からオブジェクトの寿命を問合せるために呼び出されます。

TupleSpace からオブジェクトの寿命を問合せるために呼び出されます。

このメソッド自体は Rinda::SimpleRenewer.new で指定した秒数を
返します。

Rinda::TupleEntry (9019.0)

タプルスペース内に含まれるタプルを管理するためのクラスです。 タプルの有効期限を管理し、タプルのキャンセル操作ができます。

タプルスペース内に含まれるタプルを管理するためのクラスです。
タプルの有効期限を管理し、タプルのキャンセル操作ができます。

Rinda::TupleSpace#write はこのオブジェクトを返し、
それを利用してタプルを明示的にキャンセルすることができます。

ただし、タプルスペースのあるプロセスがタプルを投入したプロセスと
異なる場合、これを受け取る側はリモートオブジェクトによって
このオブジェクトを参照します。そのためタプルスペースのプロセス側では
参照切れによるGCが発生し、TupleEntryオブジェクトが消滅してしまうかもしれません。
これを防ぐには何らかの仕掛けが必要でしょう。...

絞り込み条件を変える

Rinda::TupleEntry#cancel -> () (9019.0)

タプルをキャンセルし、タプルスペースから取り除きます。

タプルをキャンセルし、タプルスペースから取り除きます。

すでにタプルスペースから取り除かれている場合には何もしません。

@see Rinda::TupleEntry#canceled?

Rinda::TupleEntry#canceled? -> bool (9019.0)

タプルが既にキャンセルされているならば真を返します。

タプルが既にキャンセルされているならば真を返します。

@see Rinda::TupleEntry#cancel

Rinda::TupleEntry#expires -> Time (9019.0)

タプルの期限切れの時刻を返します。

タプルの期限切れの時刻を返します。

有効期限を無限に指定した場合、この時刻は Time.at(2**31-1)、つまり
Tue Jan 19 03:14:07 GMT Standard Time 2038 を返します。

@see Rinda::TupleEntry#expire

Rinda::TupleEntry#expires=(expires) (9019.0)

タプルの期限切れの時刻を指定します。

タプルの期限切れの時刻を指定します。

@param expires 期限切れの時刻(Time)

@see Rinda::TupleEntry#expires

Rinda::TupleEntry#renew(sec_or_renewer) -> () (9019.0)

タプルの有効期限を更新します。

タプルの有効期限を更新します。

sec_or_renewer によって以下のように更新されます。
* nil : 遠い未来(実質的に無限)を指定します。詳しくは Rinda::TupleEntry#expires 参照
* true : 直ちに有効期限切れになるよう指定します
* 数値 : 有効期限を現在から sec_or_renewer 秒後に指定します
* それ以外 : renew メソッドを持っていると仮定され、そのメソッドの呼び出し結果を用います。
renew メソッドは nil, true, 数値のいずれかを上のルールに従って返さなければなりません。

...

絞り込み条件を変える

Rinda::TupleEntry#size -> Integer (9019.0)

タプルのサイズ(配列の要素数/ハッシュテーブルのエントリー数)を返します

タプルのサイズ(配列の要素数/ハッシュテーブルのエントリー数)を返します

@see Rinda::TupleEntry#value

Rinda::DRbObjectTemplate (9001.0)

Rinda::DRbObjectTemplate#===(ro) (9001.0)

@todo

@todo

This DRbObjectTemplate matches +ro+ if the remote object's drburi
and drbref are the same. +nil+ is used as a wildcard.

Rinda::DRbObjectTemplate.new(uri = nil, ref = nil) (9001.0)

@todo

@todo

Creates a new DRbObjectTemplate that will match against +uri+ and
+ref+.

Rinda::Tuple (9001.0)

Tuple のためのクラスです。ユーザがこのクラスを直接使うことはありません。

Tuple のためのクラスです。ユーザがこのクラスを直接使うことはありません。

絞り込み条件を変える

Rinda::TupleEntry#value -> Array | Hash (9001.0)

管理対象のタプルを返します。

管理対象のタプルを返します。

ruby 1.8.4 feature (127.0)

ruby 1.8.4 feature ruby 1.8.4 での ruby 1.8.3 からの変更点です。

ruby 1.8.4 feature
ruby 1.8.4 での ruby 1.8.3 からの変更点です。

掲載方針

*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。

以下は各変更点に付けるべきタグです。

記号について(特に重要なものは大文字(主観))

# * カテゴリ
# * [ruby]: ruby インタプリタの変更
# * [api]: 拡張ライブラリ API
# * [lib]: ライブラリ
* レベル
* [bug]: バグ修正
* [new]: 追加され...

NEWS for Ruby 2.1.0 (55.0)

NEWS for Ruby 2.1.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。

NEWS for Ruby 2.1.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。

それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。

== 2.0.0 以降の変更

=== 言語仕様の変更

* キーワード引数のデフォルト値が省略可能になりました。これらの「必須キーワード引数」は呼び出し時に明示的に与えなければなりません。

* 整数や小数のリテラルの末尾に'r','i','...