Nicht deterministische Lesewerte bei Verwendung von std::atomic store/load mit std::memory_order_seq_cstC++

Programme in C++. Entwicklerforum
Anonymous
 Nicht deterministische Lesewerte bei Verwendung von std::atomic store/load mit std::memory_order_seq_cst

Post by Anonymous »

Ich habe mit std::atomic angefangen, etwas über Speicherordnungen in C++ zu lernen. Ich versuche, den Synchronisationsmechanismus zwischen einem aufeinanderfolgenden Speichern und Laden einer atomaren Variablen aus zwei verschiedenen Threads zu verstehen. Wenn wir das Laden und Speichern von zwei verschiedenen Threads mit der Standardspeicherreihenfolge std::memory_order_seq_cst aufrufen, so

Code: Select all

std::atomic data(0);

void func() {
data.store(1234, std::memory_order_seq_cst);
}

int main() {
std::thread t(func);
int val = data.load(std::memory_order_seq_cst);
std::cout

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post