Вопросы и ответы
Многопоточная атомарная видимость с прерыванием опроса
00
Вопрос или проблема У меня есть два потока. Поток 2 заблокирован на опросе, который включает дескриптор прерывания. Поток 1 записывает в дескриптор прерывания, чтобы разбудить поток 2. Поток 1 также записывает в атомарный булевый тип сразу перед пробуждением потока 2.
Вопросы и ответы
Сомнения относительно барьера памяти x86
00
Вопрос или проблема Я хочу знать, блокирует ли sfence обновление буфера записи, блокирует ли lfence обработку очереди недействительных операций, и делает ли mfence не только обновление буфера записи, но и обработку очереди недействительных операций.
Вопросы и ответы
Когда одно ядро прерывает другое, как гарантировать чтение наиболее актуального значения (хранящегося до прерывания) с использованием stdatomic?
01
Вопрос или проблема В системе с двумя ядрами ядру 0 необходимо прерывать ядро 1 по нескольким причинам. Для передачи как причины, так и данных прерывания используется перечисление, связанное с объединением. Код написан на C. #include <
Вопросы и ответы
Барьер памяти с использованием std::system_clock::now()
00
Вопрос или проблема Мне нужно добавить две барьеры памяти в мой код, чтобы предотвратить переупорядочивание моего кода как компилятором, так и процессором. Вот так: rec.time_stamp0 = std::system_clock::now(); std::atomic_signal_fence(std::memory_order::release);