Threadlokal

C++ Core Guidelines: Regeln zur Concurrency und zur Parallelität

C++11 war der erste C++ Standard, der sich mit Concurrency beschäftigt. Der zentrale Baustein für Concurrency ist ein Thread. Dies ist der Grund, dass die meisten der Regeln sich mit Threads beschäftigen. Dies ändert sich dramatisch mit C++17.

Hier geht es direkt zum Artikel auf Heise Developer: .

Kommentar schreibenGelesen: 5789

Multithreaded: Addition mit minimaler Synchronisation

Zwei Strategien bin ich bisher bei meiner Addition aller Elemente eines std::vector gefolgt. Zum einen habe ich die ganze Summation in einem Thread ausgeführt (Single-Threaded: Summe der Elemente eines Vektors), zum anderen alle Threads auf einer gemeinsamen Summations-Variable (Multithreaded: Addition mit einer geteilten Variable) agieren lassen. Gerade die zweite Strategie war sehr naiv. In diesem Artikel werde ich meine Erkenntnisse aus beiden Artikeln anwenden. Mein Ziel wird es daher sein, die Threads möglichst unabhängig ihre Arbeit ausführen zu lassen und die Synchronisation der Threads auf der Summations-Variable zu minimieren.

Weiterlesen...
Kommentar schreibenGelesen: 6243

Sukzessive Optimierung - Locks

Die naheliegendste Art, das undefinierte Verhalten des Artikels Sukzessive Optimierung in Wohlgefallen aufzulösen, sind  Locks.

Weiterlesen...
Kommentar schreibenGelesen: 5611

Threadlokale Daten

Threadlokale Daten werden durch das Schlüsselwort thread_local definiert. Sie sind schnell erklärt.

Weiterlesen...
Kommentar schreibenGelesen: 5351

Abonniere den Newsletter (+ pdf Päckchen)

Beiträge-Archiv

Sourcecode