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


функция _interlockedbittestandset64 (winnt.h)

Проверяет указанный бит указанного значения LONG64 и устанавливает для него значение 1. Эта операция является атомарной.

Синтаксис

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

Параметры

[in] Base

Указатель на переменную.

[in] Offset

Битовая позиция для тестирования.

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

Значение указанного бита перед его присвоением.

Комментарии

Функции с блокировкой предоставляют простой механизм для синхронизации доступа к переменной, совместно используемой несколькими потоками. Эта функция является атомарной по отношению к вызовам других взаимосвязанных функций.

Эта функция реализуется с помощью встроенной функции компилятора, где это возможно. Дополнительные сведения см. в файле заголовка WinBase.h и _interlockedbittestandset64.

Эта функция создает полный барьер памяти (или ограждение), чтобы гарантировать, что операции с памятью выполняются по порядку.

Требования

   
Целевая платформа Windows
Header winnt.h (включая Windows.h)

См. также раздел

Доступ к переменной interlocked

InterlockedBitTestAndReset

InterlockedBitTestAndReset64

InterlockedBitTestAndResetAcquire

InterlockedBitTestAndResetRelease

InterlockedBitTestAndSet

InterlockedBitTestAndSetAcquire

InterlockedBitTestAndSetRelease

Функции синхронизации