NetRxQueueNotifyMoreReceivedPacketsAvailable 関数 (netrxqueue.h)
クライアント ドライバーは NetRxQueueNotifyMoreReceivedPacketsAvailable を呼び出して、NetAdapterCx がクライアントの EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED イベント コールバック ルーチンを呼び出した後にキュー操作 を 再開します。
構文
void NetRxQueueNotifyMoreReceivedPacketsAvailable(
[_In_] NETPACKETQUEUE PacketQueue
);
パラメーター
[_In_] PacketQueue
net 受信キュー オブジェクトへのハンドル。
戻り値
なし
解説
この関数は、ポーリングが無効になっている場合にのみ呼び出す必要があります。
NetAdapterCx が NotificationEnabled を TRUE に設定してクライアント ドライバーのEVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED イベント コールバック ルーチンを呼び出した後、クライアントはキューのハードウェア割り込みを有効にします。 デバイスがハードウェア割り込みを生成すると、クライアントは通常、受信キューのNET_RINGで保留中のNET_PACKETが完了した後、EVT_WDF_INTERRUPT_DPCコールバック関数から NetRxQueueNotifyMoreReceivedPacketsAvailable を呼び出します。
クライアントは、通知の有効化ごとに 1 回だけ NetRxQueueNotifyMoreReceivedPacketsAvailable を呼び出す必要があります。 EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLEDへの最新の呼び出しで NotificationEnabled が FALSE に設定されている場合、クライアントは NetRxQueueNotifyMoreReceivedPacketsAvailable の呼び出しを回避する必要があります。 NetAdapterCx はEVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLEDを繰り返し呼び出すので、NotificationEnabled が FALSE に設定されている場合、クライアントはいくつかのケースを見逃し、NetRxQueueNotifyMoreReceivedPacketsAvailable を呼び出します。 このような場合、呼び出しは no-op になります。
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
最小 KMDF バージョン | 1.27 |
最小 UMDF バージョン | 2.33 |
Header | netrxqueue.h (netadaptercx.h を含む) |
IRQL | <= HIGH_LEVEL |