共用方式為


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)

另請參閱

KeWaitForSingleObject

NDIS_INIT_MUTEX

NDIS_RELEASE_MUTEX