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


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

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

Синтаксис

BOOLEAN _interlockedbittestandset(
  [in] LONG volatile *Base,
  [in] LONG          Offset
);

Параметры

[in] Base

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

[in] Offset

Битовое положение для проверки. Смещение от наименее значимой позиции бита, с нулевым тестированием наименее значимых битов и 31 тестированием наиболее значимых битов.

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

Значение указанного бита.

Замечания

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

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

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

Примечание Эта функция поддерживается в системах на основе Windows RT.
 

Требования

Требование Ценность
целевая платформа Виндоус
заголовка winnt.h (включая Windows.h)

См. также

межблокированного доступа к переменной

InterlockedBitTestAndReset

InterlockedBitTestAndReset64

InterlockedBitTestAndResetAcquire

InterlockedBitTestAndResetRelease

InterlockedBitTestAndSet64

InterlockedBitTestAndSetAcquire

InterlockedBitTestAndSetRelease

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