3件ヒット
[1-3件を表示]
(0.020秒)
検索結果
-
Rinda
:: TupleSpace (54109.0) -
Tuple Space を表すクラスです。
Tuple Space を表すクラスです。
このクラスのインスタンスを
drb を経由して公開することで
タプルスペースを他のプロセスからアクセスさせることができるようになります。
タプルスペースを drb 経由で利用する側は
DRb::DRbObject.new_with_uri などでこのオブジェクトのリモートオブジェクトを
取得し、Rinda::TupleSpaceProxy をかぶせることで利用します。
===[a:renewer] タプルの寿命と renewer
タプルを Rinda::TupleSpace#write などで追加するときにその寿命を
秒数で指定することができ... -
rinda
/ rinda (343.0) -
Rubyで実装されたタプルスペース(Tuple Space)を扱うためのライブラリです。
Rubyで実装されたタプルスペース(Tuple Space)を扱うためのライブラリです。
タプルスペースとは並列プログラムにおける一つのパターンです。
並列プログラミングにおいては、ロックのような同期処理が必須ですが、
適切な同期処理を実現することは困難をともないます。
このパターンにおいては、複数の並列単位(スレッド/プロセス)間の通信をすべて
タプルスペースという領域を経由して行います。これによって
プロセス間の通信トポロジーを単純化し、問題を簡単化します。
タプルスペースに対しては、タプルを書き込む(write)、取り出す(take)、
タプルの要素を覗き見る(read)
という操作の... -
Rinda
:: TupleEntry (37.0) -
タプルスペース内に含まれるタプルを管理するためのクラスです。 タプルの有効期限を管理し、タプルのキャンセル操作ができます。
タプルスペース内に含まれるタプルを管理するためのクラスです。
タプルの有効期限を管理し、タプルのキャンセル操作ができます。
Rinda::TupleSpace#write はこのオブジェクトを返し、
それを利用してタプルを明示的にキャンセルすることができます。
ただし、タプルスペースのあるプロセスがタプルを投入したプロセスと
異なる場合、これを受け取る側はリモートオブジェクトによって
このオブジェクトを参照します。そのためタプルスペースのプロセス側では
参照切れによるGCが発生し、TupleEntryオブジェクトが消滅してしまうかもしれません。
これを防ぐには何らかの仕掛けが必要でしょう。...