_interlockedbittestandset64 函数 (winnt.h)

测试指定 LONG64 值的指定位并将其设置为 1。 此操作为原子性操作。

语法

BOOLEAN _interlockedbittestandset64(
  [in] LONG64 volatile *Base,
  [in] LONG64          Offset
);

参数

[in] Base

指向变量的指针。

[in] Offset

要测试的位位置。

返回值

指定位在设置前的值。

注解

互锁函数提供了一种简单机制,用于同步对由多个线程共享的变量的访问。 对于对其他互锁函数的调用,此函数是原子的。

此函数是尽可能使用编译器内部函数实现的。 有关详细信息,请参阅 WinBase.h 头文件和 _interlockedbittestandset64

此函数生成完整的内存屏障 (或围栏) ,以确保按顺序完成内存操作。

要求

   
目标平台 Windows
标头 winnt.h (包括 Windows.h)

另请参阅

互锁变量访问

InterlockedBitTestAndReset

InterlockedBitTestAndReset64

InterlockedBitTestAndResetAcquire

InterlockedBitTestAndResetRelease

InterlockedBitTestAndSet

InterlockedBitTestAndSetAcquire

InterlockedBitTestAndSetRelease

同步函数