別のキーワード
ライブラリ
- drb (13)
-
drb
/ acl (1) -
drb
/ extserv (1) -
drb
/ extservm (1) -
drb
/ gw (2) -
drb
/ timeridconv (1) -
rinda
/ rinda (1) -
rinda
/ tuplespace (2)
キーワード
- ACL (1)
- DRbBadScheme (1)
- DRbBadURI (1)
- DRbConnError (1)
- DRbError (1)
- DRbIdConv (2)
- DRbObject (2)
- DRbObjectTemplate (1)
- DRbRemoteError (1)
- DRbServer (1)
- DRbServerNotFound (1)
- DRbUnknown (1)
- DRbUnknownError (1)
- ExtServ (1)
- ExtServManager (1)
- GW (1)
- GWIdConv (1)
- TimerIdConv (1)
- TupleEntry (1)
- TupleSpace (1)
検索結果
-
DRb
:: DRbUnknown (51076.0) -
リモートプロセスからマーシャリングされて送られてきたオブジェクトで、 そのクラスがローカルプロセス内では不明であるようなものを 表すクラス。
リモートプロセスからマーシャリングされて送られてきたオブジェクトで、
そのクラスがローカルプロセス内では不明であるようなものを
表すクラス。
このクラスのインスタンス内部ではマーシャリングされたバイト列を
保持しています。DRB 経由で他のプロセスにこのオブジェクトを渡すと、
DRbUnknown オブジェクトではなくそのマーシャリングされたデータを
渡します。
クラス名/定数名は DRb::DRbUnknown#name で取得することができます。
DRb::DRbUnknown#buf で保持しているマーシャリングされた
バイト列を得ることができます。
このクラスのインスタンスの使い... -
DRb
:: DRbUnknownError (51070.0) -
DRb::DRbUnknown をラップする例外クラスです。
DRb::DRbUnknown をラップする例外クラスです。
@see DRb::DRbUnknown#exception -
DRb
:: DRbIdConv (51058.0) -
オブジェクトと識別子を相互に変換するクラスです。
オブジェクトと識別子を相互に変換するクラスです。
リモートオブジェクトは、URIと識別子で区別されます。
リモートメソッド呼び出しは、リモートプロセスに識別子を
送り、それを受け取ったプロセスでオブジェクトに変換することで実現されます。
このクラスはdRubyでデフォルトとして使われる
のオブジェクト-識別子間の変換クラスです。
この変換には ObjectSpace の機構が使われます。特に
ObjectSpace.#_id2ref が使われています。
これはリモートオブジェクト
が有効なのはリモートプロセス内の対応オブジェクトが GC で回収されるまで
であることを意味します。一方 GC... -
DRb
:: DRbError (51052.0) -
drb ライブラリ固有の例外を表すクラス
drb ライブラリ固有の例外を表すクラス -
DRb
:: DRbBadScheme (51022.0) -
プロトコルクラスが受け取った URI の schema が そのクラスでサポートされていないことを、伝えるための例外。
プロトコルクラスが受け取った URI の schema が
そのクラスでサポートされていないことを、伝えるための例外。
@see DRb::DRbProtocol -
DRb
:: DRbServer (51022.0) -
dRuby サーバクラス。
dRuby サーバクラス。
dRuby サーバは
* リモートからのメソッド呼び出しを受け取る
* ローカルオブジェクトをリモートプロセスにリモートオブジェクトとして
渡す
などを実現するために必要です。そのため、このような操作をする前に
サーバを起動する必要があります。
他のプロセスのリモートメソッドをマーシャリング可能な
引数のみで呼び出すならばサーバは必要ありません。
複数のサーバを起動することもできますが、通常は
DRb.#start_service でサーバを起動します。 -
DRb
:: DRbServerNotFound (51022.0) -
カレントサーバが見付からない場合に発生する例外のクラス
カレントサーバが見付からない場合に発生する例外のクラス
@see DRb.#current_server -
DRb
:: DRbBadURI (51004.0) -
URI に含まれている schema をサポートしているプロトコルが見付からない ことを意味する例外クラス。
URI に含まれている schema をサポートしているプロトコルが見付からない
ことを意味する例外クラス。 -
DRb
:: DRbConnError (51004.0) -
通信エラーが発生したことを意味する例外クラス。
通信エラーが発生したことを意味する例外クラス。 -
DRb
:: DRbObject (51004.0) -
リモートの dRuby オブジェクトを表すオブジェクトです。
リモートの dRuby オブジェクトを表すオブジェクトです。
このクラスのインスタンスはプロキシとして働きます。
つまりインスタンスへのメソッド呼び出しはリモートプロセスに送られ
リモート側でメソッドが呼び出されます。
内部的には BasicObject#method_missing でメソッド呼び出しを
hook して、それを転送します。 -
DRb
:: DRbRemoteError (51004.0) -
例外オブジェクトを wrap したクラス
例外オブジェクトを wrap したクラス -
DRbIdConv (42052.0)
-
Alias of DRb::DRbIdConv
Alias of DRb::DRbIdConv -
DRbObject (42052.0)
-
Alias of DRb::DRbObject
Alias of DRb::DRbObject -
Rinda
:: DRbObjectTemplate (18004.0) -
-
DRb
:: GWIdConv (9118.0) -
DRb::DRbIdConv に drb 通信の中継に必要な拡張をしたもの。
DRb::DRbIdConv に drb 通信の中継に必要な拡張をしたもの。
詳しくは drb/gw の例を見てください。 -
DRb
:: GW (9070.0) -
drb 通信中継のためのゲートウェイです。
drb 通信中継のためのゲートウェイです。
中継プロセス上のこのオブジェクトに、各リモートプロセスが
中継を望むオブジェクトを登録します。そして別のプロセスがそれを取りだすことで
(中継された)通信を開始します。インターフェースは Hash に似ています。
詳しくは drb/gw の例を見てください。 -
DRb
:: TimerIdConv (9058.0) -
オブジェクトと識別子を相互に変換するクラスです。 これによって識別子に変換されたオブジェクトは一定時間 GC から保護されます。
オブジェクトと識別子を相互に変換するクラスです。
これによって識別子に変換されたオブジェクトは一定時間
GC から保護されます。
DRb::DRbIdConv では to_id で識別子に
変換し、リモートに送られたオブジェクトは GC から保護されません。
ローカルプロセスからの参照がなくなったオブジェクトは、
リモートからの参照が生きていたとしても GC によって廃棄される
可能性があります。
このクラスを DRb::DRbIdConv の代わりに用いることで、
to_id でオブジェクトを識別子に変換してから
一定時間(DRb::TimerIdConv.new の timeout で指... -
DRb
:: ExtServ (9052.0) -
DRb::ExtServManager で使われるサービスを定義しているクラスです。
DRb::ExtServManager で使われるサービスを定義しているクラスです。 -
DRb
:: ExtServManager (9052.0) -
DRb::ExtServ で作られたサービスを管理するクラスです。
DRb::ExtServ で作られたサービスを管理するクラスです。 -
ACL (142.0)
-
drb で用いる ACL(Access Control List)クラス。
drb で用いる ACL(Access Control List)クラス。
Access control list は "allow" と "deny" の2つからなります。
"all" や "*" という文字列は任意のアドレスにマッチします。
IPAddr が取り扱える任意のアドレス/アドレスマスクを
使うことができます。
ACLのエントリーは、以下の例に示すように、
"allow_or_deny", "addr1",
"allow_or_deny", "addr2",
:
という文字列配列で表現されます。
@see DRb.#install_acl, DRb.#st... -
Rinda
:: TupleSpace (76.0) -
Tuple Space を表すクラスです。
Tuple Space を表すクラスです。
このクラスのインスタンスを
drb を経由して公開することで
タプルスペースを他のプロセスからアクセスさせることができるようになります。
タプルスペースを drb 経由で利用する側は
DRb::DRbObject.new_with_uri などでこのオブジェクトのリモートオブジェクトを
取得し、Rinda::TupleSpaceProxy をかぶせることで利用します。
===[a:renewer] タプルの寿命と renewer
タプルを Rinda::TupleSpace#write などで追加するときにその寿命を
秒数で指定することができ... -
Rinda
:: TupleEntry (22.0) -
タプルスペース内に含まれるタプルを管理するためのクラスです。 タプルの有効期限を管理し、タプルのキャンセル操作ができます。
タプルスペース内に含まれるタプルを管理するためのクラスです。
タプルの有効期限を管理し、タプルのキャンセル操作ができます。
Rinda::TupleSpace#write はこのオブジェクトを返し、
それを利用してタプルを明示的にキャンセルすることができます。
ただし、タプルスペースのあるプロセスがタプルを投入したプロセスと
異なる場合、これを受け取る側はリモートオブジェクトによって
このオブジェクトを参照します。そのためタプルスペースのプロセス側では
参照切れによるGCが発生し、TupleEntryオブジェクトが消滅してしまうかもしれません。
これを防ぐには何らかの仕掛けが必要でしょう。...