132件ヒット
[1-100件を表示]
(0.045秒)
種類
- インスタンスメソッド (88)
- 特異メソッド (11)
- ライブラリ (11)
- 文書 (11)
- クラス (11)
ライブラリ
-
rinda
/ rinda (77) -
rinda
/ tuplespace (33)
クラス
-
Rinda
:: DRbObjectTemplate (22) -
Rinda
:: TupleSpace (33) -
Rinda
:: TupleSpaceProxy (44)
検索結果
先頭5件
-
rinda
/ rinda (38054.0) -
Rubyで実装されたタプルスペース(Tuple Space)を扱うためのライブラリです。
...ルにマッチします。
各要素に関しては以下が成立する場合にマッチします。
* パターン側の要素が nil である (つまり nil はワイルドカード)
* 「パターン側の要素 == タプル側の要素」 が成立する(例えば2つの文字列が等......drb/drb'
require 'rinda/rinda'
def do_it(v)
puts "do_it(#{v})"
v + v
end
uri = ARGV.shift || raise("usage: #{$0} <server_uri>")
DRb.start_service
ts = Rinda::TupleSpaceProxy.new(DRbObject.new(nil, uri))
while true
r = ts.take(['sum', nil, nil])
v = do_it(r[2......quire 'rinda/rinda'
uri = ARGV.shift || raise("usage: #{$0} <server_uri>")
DRb.start_service
ts = Rinda::TupleSpaceProxy.new(DRbObject.new(nil, uri))
(1..10).each do |n|
ts.write(['sum', DRb.uri, n])
end
(1..10).each do |n|
ans = ts.take(['ans', DRb.uri, n, nil])... -
Rinda
:: DRbObjectTemplate . new(uri = nil , ref = nil) (8202.0) -
@todo
@todo
Creates a new DRbObjectTemplate that will match against +uri+ and
+ref+. -
Rinda
:: TupleSpaceProxy # notify(ev , tuple , sec = nil) -> Rinda :: NotifyTemplateEntry (8101.0) -
event で指定した種類のイベントの監視を開始します。
event で指定した種類のイベントの監視を開始します。
内部的にはリモートオブジェクトの Rinda::TupleSpace#notify にフォワードされます。
詳細は Rinda::TupleSpace#notify 参照してください
@param event 監視対象のイベント(文字列)
@param pattern 監視対象となるタプルのパターン
@param sec 監視期間の長さ(秒数) -
Rinda
:: TupleSpaceProxy # read(tuple , sec=nil) -> [Array|Hash] (8101.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 (8101.0) -
tuple にマッチするタプルをタプルスペースから取り出して返します。
tuple にマッチするタプルをタプルスペースから取り出して返します。
内部的にはリモートオブジェクトの Rinda::TupleSpace#take にフォワードされます。
詳細は Rinda::TupleSpace#take を参照してください。
@param tuple タプルのパターン
@param sec タイムアウト秒数
@raise Rinda::RequestExpiredError take がタイムアウトした場合に発生します
@raise Ridna::RequestCanceledError take が何らかの理由でキャンセルされた場合に発生します。 -
Rinda
:: TupleSpaceProxy # write(tuple , sec = nil) -> Rinda :: TupleEntry (8101.0) -
tuple をタプルスペースに加えます。 tuple を管理するための Rinda::TupleEntry オブジェクトを返します。
tuple をタプルスペースに加えます。
tuple を管理するための Rinda::TupleEntry オブジェクトを返します。
内部的にはリモートオブジェクトの Rinda::TupleSpace#write にフォワードされます。
詳細は Rinda::TupleSpace#write を参照してください。
@param tuple 追加する tuple (配列かHash)
@param sec 有効期限(秒数) -
Rinda
:: Template (8036.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]) # => true
t......emplate.match(['abcd', 2, 5]) # => true
template = Rinda::Template.new([/^abc/, Integer, nil])
template.match([/^abc/, Integer, nil]) # => true
template.match(['abc', 2, 5]) # => true
template.match(['def', 2, 5]) # => false
template = Rinda::Template.new({'name' => St... -
Rinda
:: DRbObjectTemplate # ===(ro) (8006.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
:: TupleSpace # notify(event , pattern , sec = nil) -> Rinda :: NotifyTemplateEntry (125.0) -
event で指定した種類のイベントの監視を開始します。
...try を経由し、
Rinda::NotifyTemplateEntry#each を用いて報告を受け取ります。
sec で監視期間を秒数で指定できます。 nil で無限に監視し続けます。
event として以下の3つを指定できます。
* 'write' : タプルが追加された
* 'take' :......って監視が終了した場合には 'close' イベントが報告されます。
pattern で指定できるパターンについては lib:rinda/rinda#tuplepattern を
参照してください。
@param event 監視対象のイベント(文字列)
@param pattern 監視対象となるタプル......間の長さ(秒数)
=== 例
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... -
Rinda
:: TupleSpace # read(tuple , sec=nil) -> [Array|Hash] (113.0) -
タプルスペース内の tuple にマッチするタプルを一つコピーして返します。
...が終了しても、タプルスペースからタプルは取り除かれません。
tuple で指定できるパターンについては lib:rinda/rinda#tuplepattern を
参照してください。
マッチするタプルが存在しない場合は、マッチするタプルがタプルスペ......できます。
待ち時間が sec 秒を過ぎた時には read をあきらめ
例外 Rinda::RequestExpiredError を発生させます。
sec に nil を指定するとタイムアウトせずに無限に待ち続けます。
@param tuple タプルのパターン
@param sec タイムアウト秒...