Вопросы по теме 'memory-barriers'
Требуется ли барьер памяти, если второй поток ожидает завершения первого?
Предположим, что поток Alpha записывает в переменную A без блокировки. Второй поток Beta ожидает завершения Alpha , затем по очереди считывает переменную A .
Возможно ли, что содержимое A не будет свежим? Можно ли отложить запись в...
772 просмотров
schedule
31.03.2024
У сна нет семантики синхронизации?
Спецификация Java 17.3 Sleep and Yield
Важно отметить, что ни Thread.sleep, ни Thread.yield не имеют семантики синхронизации . В частности, компилятору не нужно сбрасывать записи, кэшированные в регистрах, в разделяемую память перед...
144 просмотров
schedule
14.11.2022
Программирование без блокировок: переупорядочивание и семантика порядка памяти
Я пытаюсь найти свои ноги в программировании без блокировки. Прочитав разные объяснения семантики упорядочения памяти, я хотел бы прояснить, какое возможное переупорядочение может произойти. Насколько я понял, инструкции могут быть переупорядочены...
329 просмотров
schedule
03.12.2022
Понимание std :: атомарных барьеров памяти
Я хочу понять, как работают барьеры памяти в C ++. Например, в этом случае я использую std :: atomic:
#include <iostream>
#include <atomic>
int main()
{
std::atomic<int> a;
int n = load();//returns 1 or other value...
1856 просмотров
schedule
26.03.2024
чем отличается строго упорядоченная архитектура от плохо упорядоченной архитектуры
Мы знаем, что X86_64 — строго упорядоченная архитектура. Наоборот, ARM64 или PowerPC или... Alpha плохо упорядочены.
В чем разница между ними? Влияет ли это на график процесса? Сделает ли это исполняемую программу более непредсказуемой, если...
155 просмотров
schedule
22.11.2023
C #: использование изменчивых полей с блокировкой
Насколько я понимаю, все Interlocked API в .NET вводят полный забор памяти. Тем не менее, я все еще вижу много примеров, когда volatile , который представляет собой полузаборы, используется в сочетании с Interlocked . Примером этого является...
51 просмотров
schedule
20.01.2024