Запитання з тегом «atomic»

Атомна операція нероздільна. Цей термін використовується для опису транзакцій у базах даних, доступу низького рівня в багатопотокових програмах та операцій з файловою системою.

2
Чи id = 1 - id атомний?
Зі сторінки 291 іспитів із практики програмістів OCP Java SE 6, питання 25: public class Stone implements Runnable { static int id = 1; public void run() { id = 1 - id; if (id == 0) pick(); else release(); } private static synchronized void pick() { System.out.print("P "); System.out.print("Q …

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 . (Добре, якщо жодна річ не працює; це не …

2
Ініціалізація вектора атомів
Поміркуйте: void foo() { std::vector<std::atomic<int>> foo(10); ... } Чи вміст foo зараз дійсний? Або мені потрібно явно прокрутити і ініціалізувати їх? Я перевірив Godbolt, і це здається прекрасним, проте стандарт здається дуже заплутаним у цьому питанні. Конструктор std :: vector говорить, що він вставляє вставлені за замовчуванням екземпляри std::atomic<int>, які …
12 c++  vector  atomic 

2
Що гарантується C ++ std :: atomic на рівні програміста?
Я прослухав і прочитав декілька статей, бесід та запитань про поточний потік std::atomic, і хотів би бути впевненим, що я це добре зрозумів. Оскільки я все ще трохи заплутаний у кеш-рядку запису видимості через можливі затримки протоколів когерентності кеш-пам'яті MESI (або похідних), зберігання буферів, недійсних черг тощо. Я прочитав, що …

1
Це правильна реалізація C ++ AtomicInt?
Приміщення: я працюю із вбудованим у ARM (майже голим металом) середовищем, де у мене навіть немає C ++ 11 (з std::atomic<int>), тому, будь ласка, уникайте відповідей на кшталт " просто використовувати стандартний C ++std::atomic<int> ": я не можу . Чи правильна реалізація ARM AtomicInt? (припустимо, архітектура ARM - ARMv7-A ) …
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.