NDIS_WAIT_FOR_MUTEX宏 (ndis.h)
NDIS_WAIT_FOR_MUTEX宏會將目前的線程放入等候狀態,直到指定的 mutex 物件設定為訊號狀態為止。
語法
void NDIS_WAIT_FOR_MUTEX(
_M_
);
參數
_M_
初始化NDIS_MUTEX類型 mutex 物件的指標。 呼叫端在呼叫 NDIS_INIT_MUTEX 宏之前,初始化 mutex 物件。 NDIS_MUTEX是 KMUTEX 類型的包裝函式。
傳回值
如果 作業順利完成,NDIS_WAIT_FOR_MUTEX會傳回STATUS_SUCCESS。 否則,它會傳回適當的NTSTATUS錯誤碼。
備註
NDIS 網路驅動程序應該使用 NDIS_WAIT_FOR_MUTEX 宏來等候 mutex 轉換為訊號狀態。
驅動程式無法在引發 IRQL 或 任意線程內容 (等候 mutex 物件的非零時間間隔,也就是呼叫驅動程式函式時,任何線程目前的內容) 。
NDIS_WAIT_FOR_MUTEX 會檢查 mutex 物件的目前狀態,以判斷是否可以立即滿足等候作業。 如果可立即滿足作業,則會對 mutex 物件進行必要的更新。 否則,目前的線程處於等候狀態,並已選取新線程以在目前的處理器上執行。
這個宏是 KeWaitForSingleObject 例程的 NDIS 包裝函式。
NDIS_WAIT_FOR_MUTEX的呼叫端必須在 IRQL == PASSIVE_LEVEL 和非位線程內容中執行。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | NDIS 6.0 和更新版本支援。 |
目標平台 | Universal |
標頭 | ndis.h |
IRQL | PASSIVE_LEVEL (请参阅一节) |
DDI 合規性規則 | Irql_Synch_Function (ndis) |