Запитання з тегом «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, зокрема з семантикою випуску / придбання. Зауважу, що https://preshing.com/20120913/acquire-and-release-semantics/ (серед інших) зазначено, що: ... Семантика випуску запобігає переупорядкуванню пам'яті запису-релізу з будь-якою операцією читання або запису, яка передує їй у порядку програми. Отже, для наступного: typedef struct test_struct { _Atomic(bool) ready ; int …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.