PONLINE_ROUTINEコールバック関数 (resapi.h)
リソースを使用可能としてマークします。 PONLINE_ROUTINE型は、この関数へのポインターを定義します。
構文
PONLINE_ROUTINE PonlineRoutine;
DWORD PonlineRoutine(
[in] RESID Resource,
[in, out] LPHANDLE EventHandle
)
{...}
パラメーター
[in] Resource
使用可能にするリソースのリソース識別子。
[in, out] EventHandle
入力時、 EventHandle は NULL です。 出力時に、 EventHandle には、非割り当て 同期オブジェクトへのハンドルが含まれます。 リソース DLL は、リソース モニターにリソースエラーを報告するために、このハンドルをいつでも通知できます。 EventHandle は、リソースが非同期イベント通知をサポートしていないことを示す、出力時に NULL に設定することもできます。
戻り値
リターン コード/値 | Description |
---|---|
|
操作が成功し、リソースが オンラインになりました。 |
|
リソースは他のいくつかのシステムで仲裁され、他のシステムの1つが仲裁を勝ち取った。 クォーラム対応リソースのみがこの値を返します。 |
|
要求が保留中であり、オンライン要求を処理するためにスレッドがアクティブ化されています。 |
他の理由で操作が成功しなかった場合、 Online は システム エラー コードの 1 つを返す必要があります。
注釈
オンライン エントリ ポイント関数がERROR_IO_PENDING以外のエラー コードを返す場合、リソース モニターはイベントをログに記録し、Terminate を呼び出します。
有効な EventHandle を返すことにより、次の利点が得られます。
- リソース モニターは 、LooksAlive ポーリングを 実行しません。 このオーバーヘッドを回避することは、多くの場合、特に DLL で複数のリソース インスタンスがサポートされている場合に役立ちます。
- ハンドルに通知することで、いつでもリソースエラーを報告できます。 リソース モニターは、リソースが失敗したことを確認するために IsAlive を直ちに呼び出します。
例
「リソース DLL の例」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | サポートなし |
サポートされている最小のサーバー | Windows Server 2008 Enterprise、Windows Server 2008 Datacenter |
対象プラットフォーム | Windows |
ヘッダー | resapi.h |