Поскольку встроенная сборка не поддерживается VС++ 2010 в 64-разрядном коде, как мне получить инструкцию pause
x86-64 в мой код? Для этого, похоже, не характерно, как для многих других общих инструкций сборки (например, __rdtsc()
, __cpuid()
и т.д.).
С другой стороны, я хочу, чтобы инструкция помогала с занятым случаем ожидания ожидания, так что (гиперпотоковый) процессор доступен для других потоков, работающих на указанном CPU (см. Performance Insights на intel.com). Инструкция pause
очень полезна для этого варианта использования, а также для реализаций спин-блокировки, я не могу понять, почему MS не включила его как внутреннюю.
Спасибо