Blockierende und nicht-blockierende Algorithmen

Blockierend, nichtblockierend, "lock-free" und "wait-free". Jeder dieser Begriffe beschreibt eine Charakteristik eines Algorithmus, wenn er in einer nebenläufigen Umgebung ausgeführt wird. Macht man sich daher Gedanken zum Laufzeitverhalten eines Programms, bedeutet es oft, ihn ins richtige Körbchen zu legen. Daher geht es heute um das Einsortieren.

Hier geht es zum Artikel auf Heise Developerr.

Gelesen: 8487

Heise: Böseartige Race Conditions und Data Races

In diesem Artikel geht es um bösartige Race Conditions und Data Races. Bösartige Race Conditions sind Race Conditions, die den Bruch von Invarianten eines Programms verursachen, blockierende Threads oder auch Lebenszeitprobleme von Variablen.

Hier geht es zum Artikel auf Heise Developer.

Gelesen: 8622

Heise: Race Conditions versus Data Races

Race Conditions und Data Races sind ähnliche, aber doch verschiedene Konzepte. Da sie ähnlich sind, werden sie häufig verwechselt. Verschärfend kommt hinzu, dass beide Begriff ins Deutsche mit kritischem Wettlauf übersetzt werden. Um ehrlich zu sein, verwirrender kann es nicht sein. Gerade aber, wenn es um Gleichzeitigkeit geht, ist eine eindeutige Ausdrucksweise unentbehrlich.

Hier geht es zum Artikel auf Heise Developer.

Gelesen: 9532

Heise: Verbesserte Container mit C++17

C++11 besitzt acht assoziative Container. Mit C++17 wird es möglich, komfortabler neue Elemente hinzuzufügen, bestehende Container zusammenzuführen oder sogar Elemente von einem assoziativen in den anderen Container zu verschieben. Das ist aber noch nicht alles. Der Zugriff auf assoziative und sequenzielle Container wurde vereinheitlicht.

Hier geht es zum Artikel auf Heise Developer.

Gelesen: 14292

Heise: Neue Algorithmen in der STL

Die Idee ist ganz einfach. Die Standard Template Library (STL) hat mehr als 100 Algorithmen für das Suchen, Zählen und Manipulieren von Bereichen und ihren Elementen. Mit C++17 gibt es 69 davon in neuen Variationen und sieben neue Algorithmen. Diese neuen Algorithmen und neuen Varianten lassen sich mit einer sogenannten Ausführungsstrategie parametrisieren. Dank dieser Ausführungsstrategie lässt sich angeben, ob der Algorithmus sequenziell, parallel oder parallel und vektorisierend ausgeführt wird.

Weiter geht es auf Heise Developer.

Gelesen: 10787

Heise: C++17 hat einen Visitor

Was haben die neuen C++17 Datentypen std::optional, std::any und std::variant gemein? Sie können in-place erzeugt werden. Aber das ist natürlich nicht alles. std::variant unterstützt einen Visitor. Auf Heise Developer gehts weiter.

Gelesen: 11571

Get the Current Pdf Bundle: Funktionale Programmierung in C++

I have prepared the current pdf bundle. To get it is quite simple.

Weiterlesen...
Gelesen: 32022

C++17: Vermeide Kopieren mit std::string_view

Die Existenzberechtigung von std::string_view ist es, kopieren zu vermeiden, falls die Daten bereits jemand anders gehören und diese nur lesend verwendet werden. Ganz einfach, in diesem Artikel geht es um Performanz.

Weiterlesen...
Gelesen: 38212

Heise Developer = move(Modernes C++)

Ja, du liest richtig. Ein großer Umzug steht für meinen Deutschen Blog Modernes C++ an. Ich werde auf heise Developer umziehen. Was bedeutet das?

Weiterlesen...
Gelesen: 10355

Mentoring

Stay Informed about my Mentoring

 

Rezensionen

Tutorial

Besucher

Heute 622

Gestern 1199

Woche 622

Monat 35995

Insgesamt 3334907

Aktuell sind 40 Gäste und keine Mitglieder online

Kubik-Rubik Joomla! Extensions

Abonniere den Newsletter (+ pdf Päckchen)

Beiträge-Archiv

Sourcecode

Neuste Kommentare