次の方法で共有


PFN_WSK_SEND_BACKLOG_EVENT コールバック関数 (wsk.h)

WskSendBacklogEvent イベント コールバック関数は、接続指向ソケットの理想的な送信バックログ サイズが変更されたときに、WSK アプリケーションに通知します。

構文

PFN_WSK_SEND_BACKLOG_EVENT PfnWskSendBacklogEvent;

NTSTATUS PfnWskSendBacklogEvent(
  [in, optional] PVOID SocketContext,
  [in]           SIZE_T IdealBacklogSize
)
{...}

パラメーター

[in, optional] SocketContext

理想的な送信バックログ サイズの変更について WSK アプリケーションに通知する、接続指向ソケットのソケット コンテキストへのポインター。 WSK アプリケーションは、次のいずれかの方法で WSK サブシステムへのこのポインターを提供しました。

  • ソケットを作成するために WskSocket 関数を呼び出しました。
  • ソケットを作成するために WskSocketConnect 関数を呼び出しました。
  • ソケットを受信接続として受け入れるために 、WskAccept 関数を呼び出しました。
  • その WskAcceptEvent イベント コールバック関数は、ソケットを受信接続として受け入れるために呼び出されました。

[in] IdealBacklogSize

新しい理想的な送信バックログ サイズを含む変数。

戻り値

WSK アプリケーションの WskSendBacklogEvent イベント コールバック関数は、常にSTATUS_SUCCESSを返す必要があります。

注釈

WSK サブシステムは、イベント コールバック関数が以前に SO_WSK_EVENT_CALLBACK ソケット オプションで有効になっていた場合にのみ、接続指向ソケットの理想的な送信バックログ サイズが変更された場合に、WSK アプリケーションの WskSendBacklogEvent イベント コールバック関数を呼び出します。 ソケットのイベント コールバック関数を有効にする方法の詳細については、「イベント コールバック関数 の有効化と無効化」を参照してください。

接続指向ソケットの理想的な送信バックログ サイズは、ソケットのデータ ストリームを常にいっぱいに保つために、未処理のデータを保持する必要がある (つまり、WSK サブシステムに渡されるが、まだ完了していない) 最適な量の送信データです。 WSK アプリケーションでは、このサイズを使用して、基になる接続のフロー制御状態に基づいて送信されるデータのバッファーを段階的にプローブおよびロックできます。

WSK アプリケーションは、 WskControlSocket 関数を呼び出すことによって、接続指向ソケットの現在の理想的なバックログ サイズをいつでも取得できます。

WSK サブシステムは、WSK アプリケーションの WskSendBacklogEvent イベント コールバック関数を IRQL <= DISPATCH_LEVELで呼び出します。

WSK アプリケーションの WskSendBacklogEvent イベント コールバック関数は、WSK 完了関数またはイベント コールバック関数のコンテキストで、他の WSK 要求の完了を待つ必要はありません。 コールバックは、他の WSK 要求を開始できますが (DISPATCH_LEVELで時間がかかりすぎないことを前提とします)、IRQL = PASSIVE_LEVEL でコールバックが呼び出された場合でも、その完了を待つ必要はありません。

要件

要件
サポートされている最小のクライアント Windows Vista 以降のバージョンの Windows オペレーティング システムで使用できます。
対象プラットフォーム Windows
ヘッダー wsk.h (Wsk.h を含む)
IRQL <= DISPATCH_LEVEL

こちらもご覧ください

WSK_CLIENT_CONNECTION_DISPATCH

WskAccept

WskAcceptEvent

WskControlSocket

WskSend

WskSocket

WskSocketConnect