Ein verbesserter Thread mit C++20

std::jthread steht für einen automatisch joinenden Thread. Im Gegensatz zu std::thread (C++11) joint std::jthread automatisch in seinem Destruktor und kann kooperativ unterbrochen werden. Dieser Artikel zeigt, warum std::jthread die erste Wahl sein sollte.

Hier geht es direkt zum Artikel auf Heise Developer: .

Weiterlesen...
Gelesen: 4901

Kooperatives Unterbrechen eines Threads in C++20

Vor C++20 ließen sich Threads nicht unterbrechen. Mit C++20 kann man an einen Thread die Anfrage stellen, dass er sich beendet. Ihr kann er dann nachkommen.

Hier geht's direkt zum Artikel auf Heise Developer:

Weiterlesen...
Gelesen: 4333

Barrieren und atomare Smart Pointer in C++20

In meinem letzten Artikel habe ich Latches zur Thread-Koordination in C++20 vorgestellt. Latch besitzt einen großen Bruder: Barrier. Diese können mehrmals verwendet werden. In diesem Artikel beschäftige ich mit Barrieren und atomaren Smart Pointers.

Hier geht's direkt zum Artikel auf Heise Developer: https://heise.de/-5041229https://heise.de/-5041229.

Gelesen: 4849

Latches in C++20

Latches und Barriers sind Koordinationsdatentypen, die es Threads erlauben zu warten, bis ein Zähler den Wert Null besitzt. Ein std::latch lässt sich nur einmal, ein std::barrier hingegen mehrmals verwenden. Heute schaue ich mir Latches genauer an.

Hier geht es direkt zum Artikel auf Heise Developer: .

Gelesen: 4172

Semaphoren in C++20

Semaphoren bieten sich an, um den gemeinsamen Zugriff auf geteilte Ressourcen zu koordinieren. Zusätzlich lässt sich mit ihnen Ping-Pong spielen.

Hier geht es direkt zum Artikel auf Heise Developer: .

Gelesen: 4744

Performanzvergleich von Bedingungsvariablen und Atomics in C++20

Nach Einführen des std::atomic_flag in meinem letzten Artikel "Synchronisation mit atomaren Variablen in C++20" möchte ich nun tiefer eintauchen. Heute implementiere ich ein Ping-Pong-Spiel mit Bedingungsvariablen: std::atomic_flag und std::atomic<bool>. Los geht das Spiel!

Hier geht's direkt zum Artikel auf Heise Developer:

Gelesen: 4524

Synchronisation mit atomaren Variablen

Sender/Empfänger Arbeitsabläufe sind typisch für Threads. In solch einem Arbeitsablauf wartet der Empfänger auf die Benachrichtigung des Senders bevor er seine Arbeit fortsetzt. Es gibt einige Möglichkeiten diesen Arbeitsablauf umzusetzen. Mit C++11 bieten sich Bedingungsvariablen oder Promise/Future-Paare an, mit C++20 atomare Variablen.

Hier geht es direkt zum Artikel auf Heise Developer:

Gelesen: 4368

Atomare Referenzen mit C++20

Atomare Variablen erhalten wichtige Erweiterungen in C++20. Im heutigen Artikel stelle ich den neuen Datentyp std::atomic_ref genauer vor.

Hier geht es direkt zum Artikel auf Heise Developer: https://heise.de/-4987217.

Gelesen: 4818

Bit-Manipulationen mit C++20

Mit diesem Artikel schließe ich meine Artikel zu Features der C++20-Bibliothek ab. Den Abschluss bilden die Klasse std::source_location und die Funktionen zur Bit-Manipulation.

Hier geht's direkt zum Artikel auf Heise Developer:

Gelesen: 4771

Mentoring

Stay Informed about my Mentoring

 

Rezensionen

Tutorial

Besucher

Heute 260

Gestern 3357

Woche 11823

Monat 39140

Insgesamt 3891854

Aktuell sind 28 Gäste und keine Mitglieder online

Kubik-Rubik Joomla! Extensions

Abonniere den Newsletter (+ pdf Päckchen)

Beiträge-Archiv

Sourcecode

Neuste Kommentare