144件ヒット
[1-100件を表示]
(0.020秒)
種類
- インスタンスメソッド (108)
- クラス (12)
- ライブラリ (12)
- 特異メソッド (12)
ライブラリ
-
rinda
/ rinda (84) -
rinda
/ tuplespace (48)
クラス
-
Rinda
:: TupleSpace (48) -
Rinda
:: TupleSpaceProxy (72)
検索結果
先頭5件
-
rinda
/ rinda (38028.0) -
Rubyで実装されたタプルスペース(Tuple Space)を扱うためのライブラリです。
...Rubyで実装されたタプルスペース(Tuple Space)を扱うためのライブラリです。
タプルスペースとは並列プログラムにおける一つのパターンです。
並列プログラミングにおいては、ロックのような同期処理が必須ですが、
適切な......最初の要素を
限定することで必要なタプルのみを取り出します。
タプルスペースそのものの実装は rinda/tuplespace でなされています。
このライブラリはタプルスペースへのアクセス機能等を提供します。
=== 参考
* http://ww......す。
# rinda_ts.rb
require 'drb/drb'
require 'rinda/tuplespace'
uri = ARGV.shift
DRb.start_service(uri, Rinda::TupleSpace.new)
puts DRb.uri
DRb.thread.join
# rindas.rb
require 'drb/drb'
require 'rinda/rinda'
def do_it(v)
puts "do_it(#{v})"
v + v
end
ur... -
Rinda
:: TupleSpaceProxy (14000.0) -
リモートの Rinda::TupleSpace オブジェクトを包む プロクシクラスです。
...リモートの Rinda::TupleSpace オブジェクトを包む
プロクシクラスです。
Rinda::TupleSpace#take でタプルの受け渡し時にタプルが
消失する可能性を下げるためのプロクシクラスです。... -
Rinda
:: TupleSpaceProxy . new(ts) -> Rinda :: TupleSpaceProxy (11100.0) -
ts を wrap した新たな TupleSpaceProxy オブジェクトを生成します。
...ts を wrap した新たな TupleSpaceProxy オブジェクトを生成します。
@param ts ラップするリモート Rinda::TupleSpace オブジェクト... -
Rinda
:: TupleSpaceProxy # notify(ev , tuple , sec = nil) -> Rinda :: NotifyTemplateEntry (11000.0) -
event で指定した種類のイベントの監視を開始します。
...類のイベントの監視を開始します。
内部的にはリモートオブジェクトの Rinda::TupleSpace#notify にフォワードされます。
詳細は Rinda::TupleSpace#notify 参照してください
@param event 監視対象のイベント(文字列)
@param pattern 監視対象... -
Rinda
:: TupleSpaceProxy # read(tuple , sec=nil) -> [Array|Hash] (11000.0) -
タプルスペース内の tuple にマッチするタプルを一つコピーして返します。
...るタプルを一つコピーして返します。
内部的にはリモートオブジェクトの Rinda::TupleSpace#read にフォワードされます。
詳細は Rinda::TupleSpace#read を参照してください。
@param tuple タプルのパターン
@param sec タイムアウト秒数
@r... -
Rinda
:: TupleSpaceProxy # read _ all(tuple) -> [Array|Hash] (11000.0) -
タプルスペース内の tuple にマッチするタプルをすべてコピーして返します。
...の tuple にマッチするタプルをすべてコピーして返します。
内部的にはリモートオブジェクトの Rinda::TupleSpace#read_all にフォワードされます。
詳細は Rinda::TupleSpace#read_all を参照してください。
@param tuple タプルのパターン... -
Rinda
:: TupleSpaceProxy # take(tuple , sec = nil) -> Array | Hash (11000.0) -
tuple にマッチするタプルをタプルスペースから取り出して返します。
...ルスペースから取り出して返します。
内部的にはリモートオブジェクトの Rinda::TupleSpace#take にフォワードされます。
詳細は Rinda::TupleSpace#take を参照してください。
@param tuple タプルのパターン
@param sec タイムアウト秒数
@r... -
Rinda
:: TupleSpaceProxy # write(tuple , sec = nil) -> Rinda :: TupleEntry (11000.0) -
tuple をタプルスペースに加えます。 tuple を管理するための Rinda::TupleEntry オブジェクトを返します。
...da::TupleEntry オブジェクトを返します。
内部的にはリモートオブジェクトの Rinda::TupleSpace#write にフォワードされます。
詳細は Rinda::TupleSpace#write を参照してください。
@param tuple 追加する tuple (配列かHash)
@param sec 有効期限(... -
Rinda
:: TupleSpace # notify(event , pattern , sec = nil) -> Rinda :: NotifyTemplateEntry (3006.0) -
event で指定した種類のイベントの監視を開始します。
...は lib:rinda/rinda#tuplepattern を
参照してください。
@param event 監視対象のイベント(文字列)
@param pattern 監視対象となるタプルのパターン
@param sec 監視期間の長さ(秒数)
=== 例
require 'rinda/tuplespace'
tuplespace = Rinda::TupleSpace.new......observer = tuplespace.notify("write", ["xyz", nil, nil])
Therad.new do
observer.each{|event, tuple| p event, tuple }
end
tuplespace.write(["xyz", 0, 1])
tuplespace.write(["pqr", 0, 1])
tuplespace.write(["xyz", 4, 2])...