NdisInterlockedAddUlong 宏 (ndis.h)
NdisInterlockedAddUlong 函式會將不帶正負號的 long 值新增至指定的不帶正負號整數做為不可部分完成的作業,使用呼叫端提供的微調鎖定來同步存取整數變數。
語法
void NdisInterlockedAddUlong(
[in] _Addend,
[in] _Increment,
[in] _SpinLock
);
參數
[in] _Addend
要由指定 Increment 調整值之變數的指標。
[in] _Increment
要加入至的值,位於 Addend 。
[in] _SpinLock
呼叫端初始化微調鎖定的指標。
傳回值
無
備註
NdisInterlockedAddUlong 的呼叫端必須提供微調鎖定的固定儲存空間,這必須在初始呼叫 NdisInterlockedAddUlong 之前,使用 NdisAllocateSpinLock 函式初始化。
傳遞至 NdisInterlockedAddUlong 函式的 SpinLock 值是用來確保新增至 Addend 參數上的變數是不可部分完成的,與與相同微調鎖定同步處理之相同變數上的任何其他作業有關。
NdisInterlockedAddUlong 會在取得指定的微調鎖定,並在傳回控件之前還原原始 IRQL 時,引發 IRQL DISPATCH_LEVEL。 因此,任何呼叫 NdisInterlockedAddUlong 的 驅動程式函式都不能是可分頁的程序代碼。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 支援 NDIS 6.0 和 NDIS 5.1 驅動程式 (請參閱 Windows Vista 中的 NdisInterlockedAddUlong (NDIS 5.1) ) 。 支援 NDIS 5.1 驅動程式 (請參閱 Windows XP 中的 NdisInterlockedAddUlong (NDIS 5.1) ) 。 |
目標平台 | Universal |
標頭 | ndis.h (包括 Ndis.h) |
程式庫 | Ndis.lib |
IRQL | 任何層級 |