ホーム › Networking.WinSock › LPWPUOPENCURRENTTHREAD
LPWPUOPENCURRENTTHREAD
コールバックシグネチャ
INT LPWPUOPENCURRENTTHREAD(
WSATHREADID* lpThreadId,
INT* lpErrno
);パラメーター
| フィールド | 型 | 説明 |
|---|---|---|
| lpThreadId | WSATHREADID* | オーバーラップ関数に渡すことができる WSATHREADID 構造体へのポインターです。 |
| lpErrno | INT* | エラーコードへのポインターです。 |
公式ドキュメント
WPUOpenCurrentThread 関数は、レイヤードサービスプロバイダーでオーバーラップ関数と共に使用できる、現在のスレッドへのハンドルを開きます。これは、アプリケーション以外のスレッドからオーバーラップ I/O を開始しようとするレイヤードサービスプロバイダーでの使用を想定しています。
戻り値
エラーが発生しなかった場合、 WPUOpenCurrentThread は 0 を返します。それ以外の場合は SOCKET_ERROR を返し、具体的なエラーコードは lpErrno で取得できます。
| エラーコード | 意味 |
|---|---|
| この関数を使用する前に、 WSPStartup の呼び出しが成功している必要があります。 |
解説(Remarks)
WPUOpenCurrentThread 関数は、 LPWSPSend や LPWSPRecv などのオーバーラップ関数に渡すことができる WSATHREADID 構造体へのポインターを提供します。上位層のいずれかでプライベートスレッドを使用するレイヤードサービスプロバイダーは、 WPUOpenCurrentThread を使用して、オーバーラップ関数を管理する下位層に WSATHREADID ポインターを渡します。
その後は、 LPWSPSend や LPWSPRecv などのオーバーラップ関数を、通常のサービスプロバイダーと同じように使用できます。
WPUOpenCurrentThread を呼び出すたびに、対応する WPUCloseThread の呼び出しが必要です。
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)