@PeterCordes Хороший вопрос, я отредактировал ответ, чтобы указать, какие хранилища / загрузки гарантированно будут атомарными.

(и в нескольких SO) я вижу, что C ++ не поддерживает что-то вроде без блокировки и еще не может поддерживать что-то вроде атомарного вектора AVX / SSE, потому что он зависит от процессора (хотя в настоящее время я знаю, что у процессоров ARM, AArch64 и x86_64 есть векторы).std::atomic<double>Но есть ли поддержка на уровне сборки для атомарных операций над

s или векторы в x86_64? Если да, то какие операции поддерживаются (например, загрузка, сохранение, сложение, вычитание, умножение)? Какие операции MSVC ++ 2017 реализует без блокировок вdoubleявляетсяatomic<double>?

Ответы на вопрос(0)

Ваш ответ на вопрос