broadcast 属性
キーワード [broadcast] は 、リモート プロシージャコールをローカル ネットワーク上のすべてのサーバーに送信することを指定します。
[
interface-attribute-list
]
interface interface-name
{
[broadcast [, attribute-list]] returntype function-name(params)
}
-
interface-attribute-list
-
インターフェイス全体に適用される 0 個以上の IDL 属性の一覧を指定します。 2 つ以上のインターフェイス属性が存在する場合は、コンマで区切る必要があります。
-
interface-name
-
インターフェイスの名前を指定します。
-
attribute-list
-
関数に適用する追加の属性を指定します。 複数の属性をコンマで区切ります。
-
returntype
-
関数の戻り値の型を指定します。
-
function-name
-
[broadcast] 属性を適用する関数の名前を指定します。
-
params
-
関数パラメーターの一覧。
[broadcast] キーワードは、ルーチンが特定のサーバーに配信されるのではなく、ネットワーク上のすべてのサーバーに常にブロードキャストされることを指定します。クライアントは最初の応答から出力を受け取り、正常に返されますが、後続の応答は破棄されます。
[broadcast] 属性を持つ操作は、暗黙的に [べき等] 操作です。 ただし、[ broadcast] 属性は、[ べき等] 属性を持つ関数に含まれない追加のプロパティを指定します。 具体的には、[ broadcast] 属性を使用する関数は、1 つのリモート プロシージャ呼び出しの結果としてルーチンを複数回呼び出すことができることを指定します。 同時に、複数のサーバーに送信できます。 これは 、[べき等] 属性とは異なり、呼び出しが完了していない場合にのみ再試行できることを指定します。
リモート プロシージャがローカル ネットワーク上のすべてのホストへの呼び出しをブロードキャストする場合は、 ncadg_ip_udp または ncadg_ipx プロトコル シーケンスのいずれかを使用する必要があります。 [ブロードキャスト] パケットのサイズは、使用中のデータグラム サービスによって決まります。