Вопросы с тегом «memory-barriers»

1
Для чего используются заборы памяти в Java?
Пытаясь понять, как SubmissionPublisher( исходный код в Java SE 10, OpenJDK | docs ), новый класс, добавленный в Java SE в версии 9, был реализован, я наткнулся на несколько вызовов API, о которых VarHandleраньше не знал: fullFence, acquireFence, releaseFence, loadLoadFenceИ storeStoreFence. Проведя некоторые исследования, особенно в отношении концепции барьеров / …

4
Как достичь барьера StoreLoad в C ++ 11?
Я хочу написать переносимый код (Intel, ARM, PowerPC ...), который решает вариант классической задачи: Initially: X=Y=0 Thread A: X=1 if(!Y){ do something } Thread B: Y=1 if(!X){ do something } в которой цель состоит в том, чтобы избежать ситуации, в которой работают оба потокаsomething . (Хорошо, если ни одна из …

1
C11 Atomic Acquire / Release и x86_64 отсутствие согласованности загрузки / хранения?
Я борюсь с разделом 5.1.2.4 стандарта C11, в частности с семантикой Release / Acquire. Я отмечаю, что https://preshing.com/20120913/acquire-and-release-semantics/ (среди прочих) заявляет, что: ... Семантика релиза предотвращает переупорядочение памяти релиз-релиза с любой предшествующей ему операцией чтения или записи в программном порядке. Итак, для следующего: typedef struct test_struct { _Atomic(bool) ready ; …
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.