Ruby 3.3 リファレンスマニュアル

class DRb::DRbUNIXSocket

[edit]

要約

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:" で始まらない場合に発生します。
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 を参照してください。
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"]

インスタンスメソッド

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 を返します。