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

class Ractor::Port

[edit]

要約

Ractor 間でメッセージを交換するための仕組みを提供するクラスです。

目次

特異メソッド
インスタンスメソッド

特異メソッド

new -> Ractor::Port[permalink][rdoc][edit]

インスタンスメソッド

self << msg, move: false[permalink][rdoc][edit]
send(msg, move: false)

Port にメッセージを送信します。

[PARAM] msg:
送信するメッセージを指定します。
[PARAM] move:
msg を「移動」する場合、true を指定します。
close[permalink][rdoc][edit]

Port を閉じます。

閉じられた Port に対して Ractor::Port#send による送信を試みた場合、 Ractor::ClosedError が発生します。 Port が閉じられる前に送信され、未受信のメッセージがある場合、その数ぶんだけ Ractor::Port#receive を使って受信できます。

Port を作成した Ractor 以外で close を呼ぶことはできません。

closed? -> bool[permalink][rdoc][edit]

Port が閉じられている場合、true を返します。

receive -> object[permalink][rdoc][edit]

Port に送信されたメッセージを受信します。

メッセージキューが空の場合はブロックします。