NetRxQueueNotifyMoreReceivedPacketsAvailable 函式 (netrxqueue.h)
用戶端驅動程式會呼叫 NetRxQueueNotifyMoreReceivedPacketsAvailable ,以在 NetAdapterCx 呼叫 用戶端EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED事件 回呼例程之後繼續佇列作業。
語法
void NetRxQueueNotifyMoreReceivedPacketsAvailable(
[_In_] NETPACKETQUEUE PacketQueue
);
參數
[_In_] PacketQueue
net receive queue 物件的句柄。
傳回值
無
備註
只有在停用輪詢時,才應該呼叫此函式。
NetAdapterCx 呼叫用戶端 驅動程式EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED事件 回呼例程,並將 NotificationEnabled 設定為 TRUE 之後,用戶端會啟用佇列的硬體中斷。 當裝置產生硬體中斷時,用戶端通常會從其EVT_WDF_INTERRUPT_DPC回呼函式呼叫 NetRxQueueNotifyMoreReceivedPacketsAvailable,在接收佇列的NET_RING中完成擱置NET_PACKET之後。
客戶端應該只針對啟用通知呼叫 NetRxQueueNotifyMoreReceivedPacketsAvailable 一次。 如果最近呼叫 EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED 的 NotificationEnabled 設定為 FALSE,客戶端應該避免叫用 NetRxQueueNotifyMoreReceivedPacketsAvailable。 因為 NetAdapterCx 重複叫用EVT_PACKET_QUEUE_SET_NOTIFICATION_ENABLED,所以當 NotificationEnabled 設為 FALSE 時,用戶端可能會遺漏幾個案例並呼叫 NetRxQueueNotifyMoreReceivedPacketsAvailable。 在這些情況下,呼叫將會是無作業。
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
最小 KMDF 版本 | 1.27 |
最低UMDF版本 | 2.33 |
標頭 | netrxqueue.h (包含 netadaptercx.h) |
IRQL | <= HIGH_LEVEL |