InterlockedBitTestAndReset

InterlockedBitTestAndReset tests the specified bit of the specified LONG value and sets it to 0. The operation is atomic.

Syntax

Copy
BOOL InterlockedBitTestAndReset(
    [in]    LONG volatile *Base,
    [in]    LONG           Bit
);

Parameters

[in] Base

A pointer to a variable.

[in] Bit

The bit position to be tested.

Return Value

The function returns the value of the specified bit.

Remarks

The interlocked functions provide a simple mechanism for synchronizing access to a variable shared by multiple threads. This function is atomic concerning calls to other interlocked functions.

This function is implemented using a compiler intrinsic where possible. For more information, see the winbase.h header file and _interlockedbittestandreset.

This function generates a full memory barrier (or fence) to ensure that memory operations are completed properly.

Requirements

Minimum supported version Header

wRTOS 1.0 SDK

windows.h

See Also: