Win32 API 日本語リファレンス
ホーム › Networking.Clustering › PARBITRATE_ROUTINE

PARBITRATE_ROUTINE

コールバック

シグネチャ

DWORD PARBITRATE_ROUTINE(
    void* Resource,
    PQUORUM_RESOURCE_LOST LostQuorumResource
);

パラメーター

フィールド型説明
Resourcevoid*所有権の対象となるクォーラムリソースのリソース識別子。
LostQuorumResourcePQUORUM_RESOURCE_LOSTクォーラムリソースの制御を正常に獲得した後にその制御が失われた場合に呼び出される QuorumResourceLost コールバック関数のアドレス。

公式ドキュメント

ノードが クォーラムリソースの所有権を取り戻すことを試みられるようにします。 PARBITRATE_ROUTINE 型は、この関数へのポインターを定義します。

戻り値

リターンコード/値 説明
ERROR_SUCCESS
0
アービトレーションは成功し、クォーラムリソースは引き続き防御されています。
エラーコード
アービトレーションは成功しませんでした。

解説(Remarks)

Arbitrate エントリポイント関数は、 クォーラムリソースに対してのみ実装されます。この関数は、 Startup と Open の両方が呼び出された後にのみ呼び出されます。

Arbitrate の実装は、300 ミリ秒未満で完了するようにしてください。

Arbitrate が成功した場合は、ResourceId で表されるクォーラムリソースに対して、 現在のノードだけがアービトレーションに成功できるようにしてください。たとえば、ディスクリソースでは、 そのリソースに対する予約を 1 秒に 1 回継続的に置き換えることで防御を実装できます。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)