種類
- インスタンスメソッド (7)
- 特異メソッド (4)
- ライブラリ (2)
- クラス (2)
ライブラリ
-
drb
/ extserv (6) -
drb
/ extservm (7)
クラス
-
DRb
:: ExtServ (5) -
DRb
:: ExtServManager (6)
キーワード
- ExtServManager (1)
- alive? (1)
- command (1)
- command= (1)
-
drb
/ extserv (1) -
drb
/ extservm (1) - front (1)
- new (2)
- server (1)
- service (1)
-
stop
_ service (1) - uri (1)
- uri= (1)
検索結果
先頭5件
-
DRb
:: ExtServ (72097.0) -
DRb::ExtServManager で使われるサービスを定義しているクラスです。
DRb::ExtServManager で使われるサービスを定義しているクラスです。 -
drb
/ extservm (55357.0) -
DRb::ExtServManager を定義しているライブラリ。
DRb::ExtServManager を定義しているライブラリ。
DRb::ExtServManager は drb で実現されたサービスブローカーです。
個々のサービスは drb/extserv で定義されている
DRb::ExtServ を用いて実装します。
DRb::ExtServManager
はクライアントの要求に応じて個々のサービスを
サブプロセスとして起動し、各サービスを表す DRb::ExtServ オブジェクト
をリモートオブジェクトとしてクライアントに渡します。
このライブラリは簡易的なもので、あまりメンテナンスもされていないので、
本格的な用途にはこのライブラリを参... -
drb
/ extserv (54307.0) -
DRb::ExtServ を定義しているライブラリ。
DRb::ExtServ を定義しているライブラリ。
drb/extservm で定義されている DRb::ExtServManager
によって管理されるサービスを実現する DRb::ExtServ を
定義しています。
詳しくは drb/extservm を見てください。 -
DRb
:: ExtServManager (36145.0) -
DRb::ExtServ で作られたサービスを管理するクラスです。
DRb::ExtServ で作られたサービスを管理するクラスです。 -
DRb
:: ExtServ . new(there , name , server=nil) -> DRb :: ExtServ (28456.0) -
DRb::ExtServ オブジェクトを生成し、サービスを DRb::ExtServManager オブジェクトに登録します。
DRb::ExtServ オブジェクトを生成し、サービスを
DRb::ExtServManager オブジェクトに登録します。
there で指定した
URI の front オブジェクト(これは DRb::ExtServManager の
インスタンスであるべきです)に name という名前でサービスを登録します。
there, name は Object::ARGV の末尾2つを渡してください。
server には drb の通信に用いる DRb::DRbServer オブジェクトを指定します。
省略した場合は DRb.#primary_server を用います。
DRb::Ext... -
DRb
:: ExtServManager # service(name) -> DRb :: ExtServ (28360.0) -
name で指定したサービスに関連付けられた DRb::ExtServ オブジェクトを返します。
name で指定したサービスに関連付けられた DRb::ExtServ
オブジェクトを返します。
サービスを提供するプロセスが起動していない場合は、DRb::ExtServManager.command
で指定したプロセスを起動し、そのプロセスが DRb::ExtServ オブジェクトが
DRb::ExtServ.new によって ExtServManager に登録されるのを待ちます。
その後、登録されたオブジェクトを返します。
すでにプロセスが起動していた場合は、登録されている DRb::ExtServ オブジェクトを
返します。
DRb::ExtServ#stop_servic... -
DRb
:: ExtServ # server -> DRb :: DRbServer (28297.0) -
通信に利用しているサーバを返します。
通信に利用しているサーバを返します。
DRb::ExtServ.new で指定した DRb::DRbServer を返します。 -
DRb
:: ExtServManager . new -> DRb :: ExtServManager (28039.0) -
DRb::ExtServManager オブジェクトを生成して返します。
DRb::ExtServManager オブジェクトを生成して返します。
これで生成したオブジェクトの DRb::ExtServManager#service を
リモートプロセスから呼び出すことでサービスの仲介を実現します。 -
DRb
:: ExtServ # front -> object (27127.0) -
サービスの窓口となるオブジェクトを返します。
サービスの窓口となるオブジェクトを返します。
実際には、DRb::ExtServ.new の server で指定した
DRb::DRbServer オブジェクトの DRb::DRbServer#front
が返されます。 -
DRb
:: ExtServ # stop _ service -> true (27109.0) -
サービスを停止します。
サービスを停止します。
DRb::ExtServManager オブジェクトにサービスの停止を伝達し、
DRb::DRbServer#stop_service でサーバを停止します。
このメソッドはリモートから起動することができます。
サーバが停止するため、停止したサービスのリモートオブジェクトは
利用できなくなります。また、サーバの停止により
接続を待ち受けているスレッドが停止します。
サービス停止後、
DRb::ExtServManager#service で同じ名前のサービスを要求すると、
別のプロセスが起動します。 -
DRb
:: ExtServManager # uri -> String|nil (27073.0) -
サービス起動時にプロセスを spawn する時に渡す URI を返します。
サービス起動時にプロセスを spawn する時に渡す URI を返します。
デフォルトは nil で、これは DRb.#uri を用いることを意味します。
@see DRb::ExtServManager#uri= -
DRb
:: ExtServManager # uri=(uri) (27037.0) -
サービス起動時にプロセスを spawn する時に渡す URI を設定します。
サービス起動時にプロセスを spawn する時に渡す URI を設定します。
@see DRb::ExtServManager#uri -
DRb
:: ExtServManager . command -> { String => String|[String] } (27037.0) -
サービスを起動するためのコマンドを指定するための Hash を 返します。
サービスを起動するためのコマンドを指定するための Hash を
返します。
Hash のキーがサービス名で、値がそのサービスを起動するためのコマンドです。
この Hash を変更することでサービスを定義します。
DRb::ExtServManager.command= で Hash 自体を
変更することでも同じことができます。
コマンドは文字列、もしくは文字列の配列で指定します。
文字列で指定した場合は Kernel.#spawn で
プロセスを起動する際に shell 経由で起動されます。
文字列の配列で指定すると shell を経由せずに起動されます。 -
DRb
:: ExtServManager . command=(cmd) (27037.0) -
サービスを起動するためのコマンドを指定するための Hash を 設定します。
サービスを起動するためのコマンドを指定するための Hash を
設定します。
@param cmd コマンドを設定した Hash
@see DRb::ExtServManager.command -
DRb
:: ExtServ # alive? -> bool (27001.0) -
サービスが起動しているならば真を返します。
サービスが起動しているならば真を返します。
リモート側からこのメソッドを呼ぶのはあまり意味がありません。
サービスを停止するとリモートメソッド呼び出しができなくなるためです。