Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Динамически выбирает между загрузкой Armv8.0, эксклюзивными инструкциями для хранения и атомарными инструкциями Armv8.1 Large System Extension (LSE) на основе возможностей процессора во время выполнения.
Синтаксис
/forceInterlockedFunctions
[-
]
Замечания
По возможности этот флаг позволяет избежать использования эксклюзивных инструкций загрузки и хранения Armv8.0, так как эти инструкции могут привести к блокировке. Этот флаг принудительно генерирует следующие взаимосвязанные встроенные функции в виде внестрочных функций:
Операция | 8 | 16 | 32 | 64 | 128 | Указатель |
---|---|---|---|---|---|---|
Добавь | Отсутствует | Отсутствует | Полный | Полный | Отсутствует | Отсутствует |
И | Полный | Полный | Полный | Полный | Отсутствует | Отсутствует |
СравнитьБиржа | Полный | Полный | Полный | Полный | Полный | Полный |
Декремент | Отсутствует | Полный | Полный | Полный | Отсутствует | Отсутствует |
Обмен | Полный | Полный | Полный | Полный | Отсутствует | Полный |
ОбменДобавить | Полный | Полный | Полный | Полный | Отсутствует | Отсутствует |
Шаг | Отсутствует | Полный | Полный | Полный | Отсутствует | Отсутствует |
или | Полный | Полный | Полный | Полный | Отсутствует | Отсутствует |
Xor | Полный | Полный | Полный | Полный | Отсутствует | Отсутствует |
bittestandreset | Отсутствует | Отсутствует | Полный | Полный | Отсутствует | Отсутствует |
bittestandset | Отсутствует | Отсутствует | Полный | Полный | Отсутствует | Отсутствует |
Ключ:
Полный: поддерживает plain,
_acq
,_rel
, и_nf
формы.Нет: Не поддерживается
Для получения дополнительной информации о встроенных функциях блокировки см. раздел «Встроенные функции блокировки» в Arm64 Встроенные функции.
Установка параметра компилятора /forceInterlockedFunctions
в Visual Studio
Откройте диалоговое окно Страницы свойств проекта. Подробнее см. в статье Настройка компилятора C++ и свойств сборки в Visual Studio.
Перейдите на страницу свойств Свойства конфигурации>C/C++>Командная строка.
В поле Дополнительные параметры добавьте
/forceInterlockedFunctions
для включения. Нажмите ОК, чтобы сохранить внесенные изменения.
Установка данного параметра компилятора программным способом
- См. AdditionalOptions.
См. также
Встроенные характеристики Arm64
Параметры компилятора MSVC
Синтаксис командной строки компилятора MSVC