Export (0) Print
Expand All
Expand Minimize

InterlockedDecrementRelease routine

The InterlockedDecrementRelease routine uses release semantics to decrement a caller-supplied variable.

Syntax


LONG InterlockedDecrementRelease(
  _Inout_  LONG volatile *Addend
);

Parameters

Addend [in, out]

A pointer to the variable to decrement.

Return value

InterlockedDecrementRelease returns the decremented value.

Remarks

The InterlockedDecrementRelease routine performs the same operation as InterlockedDecrement, except that the former guarantees only release semantics whereas the latter guarantees both acquire and release semantics. For more information about acquire and release semantics, see Acquire and Release Semantics.

On processors that do not support release-semantics operations, InterlockedDecrementRelease is identical to InterlockedDecrement. On processors such as Intel Itanium-based processors, which do support these operations, InterlockedDecrementRelease runs faster.

Interlocked operations cannot be used on non-cached memory.

Requirements

Version

Available only on Windows Server 2003 and later versions of the Windows operating system.

Header

Wdm.h (include Wdm.h, Ntddk.h, or Ntifs.h)

IRQL

Any level

See also

InterlockedDecrement
InterlockedDecrementAcquire

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft