Поделиться через


Функция InterlockedDecrement (wdm.h)

InterlockedDecrement подпрограмма уменьшает переменную типа, предоставляемую вызывающим оператором, как атомарную операцию.

Синтаксис

LONG CDECL_NON_WVMPURE InterlockedDecrement(
  [in, out] LONG volatile *Addend
);

Параметры

[in, out] Addend

Указатель на переменную для уменьшения.

Возвращаемое значение

InterlockedDecrement возвращает отложенное значение.

Замечания

InterlockedDecrement следует использовать вместо ExInterlockedDecrementLong, так как она эффективнее и быстрее.

InterlockedDecrement реализуется компилятором, если это возможно. Для этого не требуется блокировка спина и поэтому ее можно безопасно использовать на страницах данных.

InterlockedDecrement является атомарным только в отношении других вызовов interlockedXxx.

Операции с блокировкой нельзя использовать в не кэшированном памяти.

Требования

Требование Ценность
минимальные поддерживаемые клиентские Доступно начиная с Windows 2000.
целевая платформа Всеобщий
заголовка wdm.h (include Wdm.h, Ntddk.h, Ntifs.h, Miniport.h)
библиотеки OneCoreUAP.lib в Windows 10
IRQL Любой уровень

См. также

ExInterlockedAddLargeInteger

ExInterlockedAddUlong

InterlockedExchange

InterlockedIncrement