функция _interlockedbittestandset (winnt.h)
Проверяет указанный бит указанного значения LONG и задает для него значение 1. Эта операция является атомарной.
Синтаксис
BOOLEAN _interlockedbittestandset(
[in] LONG volatile *Base,
[in] LONG Offset
);
Параметры
[in] Base
Указатель на переменную.
[in] Offset
Битовая позиция для тестирования.
Возвращаемое значение
Значение указанного бита.
Комментарии
Заблокированные функции предоставляют простой механизм для синхронизации доступа к переменной, совместно используемой несколькими потоками. Эта функция является атомарной по отношению к вызовам других взаимосвязанных функций.
Эта функция реализуется с помощью встроенной функции компилятора, где это возможно. Дополнительные сведения см. в файле заголовка WinBase.h и _interlockedbittestandset.
Эта функция создает полный барьер памяти (или ограждение), чтобы гарантировать, что операции с памятью выполняются по порядку.
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | winnt.h (включая Windows.h) |
См. также раздел
Доступ к заблокированным переменным
InterlockedBitTestAndResetAcquire
InterlockedBitTestAndResetRelease
InterlockedBitTestAndSetAcquire