Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Динамически выбирает между загрузкой 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