要約
drbunix: という形式の URI を使い、UNIX ドメインソケット経由で通信するプロトコル実装クラスです。drb/unix を require すると、 DRb::DRbProtocol.#add_protocol によって自動的に drb に登録されます。
内部的には、druby:// (TCP/IP) 用のプロトコル実装クラスである DRbTCPSocket のサブクラスとして実装されています。
プロトコル実装クラスに要求されるインターフェースについては DRb::DRbProtocol を参照してください。通常、ユーザーがこのクラスのメソッドを直接呼び出すことはありません。
目次
- 特異メソッド
- インスタンスメソッド
特異メソッド
open(uri, config) -> DRb::DRbUNIXSocketRuby 3.0 から[permalink][rdoc][edit]-
uri で指定した UNIX ドメインソケットに接続します。
- [PARAM]
uri: - "drbunix:パス" という形式の URI を指定します。
- [PARAM]
config: - 接続の設定を Hash で指定します。
- [EXCEPTION]
DRb::DRbBadScheme: - uri が "drbunix:" で始まらない場合に発生します。
- [PARAM]
open_server(uri, config) -> DRb::DRbUNIXSocketRuby 3.0 から[permalink][rdoc][edit]-
uri で指定したパスに UNIX ドメインソケットを作成し、接続を待ち受けます。
パスの部分を省略した場合(例: "drbunix:")は、一時ファイルにソケットを作成します。
- [PARAM]
uri: - "drbunix:パス" という形式の URI を指定します。
- [PARAM]
config: -
接続の設定を Hash で指定します。
:UNIXFileMode、:UNIXFileOwner、:UNIXFileGroupを指定できます。詳細は drb/unix を参照してください。
- [PARAM]
uri_option(uri, config) -> [String, String | nil]Ruby 3.0 から[permalink][rdoc][edit]-
uri をパースして [uri, option] という配列を返します。
- [PARAM]
uri: - "drbunix:パス" または "drbunix:パス?オプション" という形式の URI を指定します。
- [PARAM]
config: - 接続の設定を Hash で指定します。
require 'drb/unix' p DRb::DRbUNIXSocket.uri_option("drbunix:/tmp/foo?opt1", {}) # => ["drbunix:/tmp/foo", "opt1"] - [PARAM]
インスタンスメソッド
accept -> DRb::DRbUNIXSocketRuby 3.0 から[permalink][rdoc][edit]-
クライアントからの接続を受け付け、そのクライアントとの通信を行うための新しい DRbUNIXSocket オブジェクトを返します。
DRb::DRbUNIXSocket.open_server が返したオブジェクトに対して呼び出します。
close -> ()Ruby 3.0 から[permalink][rdoc][edit]-
接続を閉じます。DRb::DRbUNIXSocket.open_server が返したオブジェクトの場合は、待ち受け用の UNIX ドメインソケットファイルも削除します。
uri -> StringRuby 3.0 から[permalink][rdoc][edit]-
接続している、または接続を待ち受けている URI を返します。