Вопросы по теме 'memory-fences'
C++0X memory_order без заборов, приложений, чипов, поддерживающих
В ответ на мой предыдущий вопрос класс atomic<T> определяет большинство операций с параметром memory_order . В отличие от забора этот порядок памяти влияет только на тот атом, с которым он работает. Предположительно, используя несколько...
530 просмотров
schedule
29.06.2022
Неисправное выполнение и ограждения памяти
Я знаю, что современные процессоры могут работать не по порядку, однако они всегда удаляют результаты по порядку, как описано в Википедии.
«Вне очереди процессоры заполняют эти« слоты »вовремя другими готовыми инструкциями, затем переупорядочивают...
3339 просмотров
schedule
24.12.2022
использование электрического забора в программе на С++
В последнее время я экспериментировал с Electric Fence и не могу понять, как использовать его с кодом C++.
Вот пример:
// test.cpp
#include <cstdlib>...
10118 просмотров
schedule
04.04.2022
Понимание атомарных переменных и операций
Я снова и снова читал об атомных типах и операциях boost и std (c ++ 11), и все же я не уверен, что понимаю это правильно (а в некоторых случаях я вообще этого не понимаю). Итак, у меня есть несколько вопросов по этому поводу.
Мои источники,...
1987 просмотров
schedule
06.04.2022
Режим синхронизации в блоке, защищенном мьютексом
http://www.boost.org/doc/libs/1_58_0/doc/html/atomic/usage_examples.html
В примере «Singleton с дважды проверенным шаблоном блокировки» из приведенных выше примеров повышения необходимы ли memory_order_consume для второй загрузки _instance и...
79 просмотров
schedule
11.06.2022
Обеспечение видимости обновления данных для других потоков с помощью ограждений
У меня два вопроса: рассмотрим два потока, один из которых вносит изменения в общие данные, а другой работает с общими данными. Оба потока захватывают мьютекс, прежде чем что-либо делать с данными.
Как я могу гарантировать, что поток, работающий с...
52 просмотров
schedule
29.06.2023
Предотвращает ли изменчивость, характерная для MS, переупорядочивание аппаратных инструкций
Из документации :
Специально для Microsoft
Когда используется параметр компилятора /volatile:ms — по умолчанию, когда нацелены архитектуры, отличные от ARM, — компилятор генерирует дополнительный код для поддержания порядка ссылок на...
240 просмотров
schedule
22.11.2022