_interlockedbittestandset, _interlockedbittestandset64
Microsoft Specific
Generate the lock_bts instruction, which examines bit b of the address a and returns its current value.
unsigned char _interlockedbittestandset(
long *a,
long b
);
unsigned char _interlockedbittestandset64(
__int64 *a,
__int64 b
);
Parameters
[in] a
A pointer to the memory to examine.[in] b
The bit position to test.
Return Value
The bit at the position specified.
Requirements
Intrinsic |
Architecture |
---|---|
_interlockedbittestandset |
x86, x64 |
_interlockedbittestandset64 |
x64 |
Header file <intrin.h>
Remarks
As a result of the lock_bts instruction, the bit is set to 1. The operation is atomic.
In Visual C++ 2005, these functions behave as read-write memory barriers. For more information, see _ReadWriteBarrier.
This routine is only available as an intrinsic.