Gutes Buch über Nebenläufigkeiten, Multithreading
-
Hi,
mein Post im C++ Unterforum http://www.c-plusplus.net/forum/327400 hat mir gezeigt, dass ich mich wohl doch nochmal mit Nebenläufigkeitem intesiver beschäftigen sollte/möchte. Kennt einer ein gutes Buch (gerne English) welches dieses Thema behandelt? Am liebsten wäre mir natürlich, wenn es Nebenläufigkeiten in C/C++ behandelt, aber das wäre kein muss. Dabei kann es ruhig tief in die Materie eintauchen (Stichwort: interne Implementierung), aber sollte halt auch Pattern oder so beinhalten.
Viele Grüße
-
Ein Klassiker ist The Art of Multiprocessor Programming. Das Buch verwendet Java als Programmiersprache aber das sollte kein Problem sein (du willst ja die Konzepte lernen und nicht bloss wie du die C++ Libraries verwenden kannst).
Ich habe die erste Version des Buches zu Hause und finde es ziemlich gut wenn auch teilweise etwas ungenau erklärt. Ich habe gehört dass dies in der neuen Version besser geworden ist.
Es ist aber auch sehr anspruchsvoll. Eventuell ist es als Einstieg in die Materie etwas ungeeignet (kommt draufan wie gross dein Frustpotential beim lernen ist und wie viel du bereits weisst).
-
Ich habe nie ein Buch darüber gelesen. Grob die Threading-Bibliothek von C++ kennen, auf Wikipedia ein paar Artikel über die schlimmsten Fallen lesen und ein bisschen selber rumspielen sollte für die meisten Anwendungen reichen. Das was noch fehlt schnappt man dann nebenher so auf.
Man hört allerdings viel gutes über dieses Buch:
C++ Concurrency in Action | ISBN: 1933988770Wenn ich mal Zeit habe, lese ich das vielleicht auch.
-
Es gibt da auch sowas:
http://www.amazon.de/Patterns-Parallel-Programming-Software/dp/0321228111
Das sind eher "high level" Patterns. Weiß nicht, ob das gut ist, hat auf Amazon gute Bewertungen. Ich habs gelesen und konnte damit wenig anfangen.
-
läufer_auf_f7 schrieb:
Ich habe nie ein Buch darüber gelesen. Grob die Threading-Bibliothek von C++ kennen, auf Wikipedia ein paar Artikel über die schlimmsten Fallen lesen und ein bisschen selber rumspielen sollte für die meisten Anwendungen reichen. Das was noch fehlt schnappt man dann nebenher so auf.
Man hört allerdings viel gutes über dieses Buch:
C++ Concurrency in Action | ISBN: 1933988770Wenn ich mal Zeit habe, lese ich das vielleicht auch.
Ja, das Buch ist gut.
Es wird alles zur C++11 Threadingbibliothek erklärt, von den atomic operation bis hin zu futures, darüber hinaus wie man thread safe und ggf. lock free Datenstrukturen schreibt und Algorithmen parallelisiert und Tipps und Tricks wie man Multithreading Code generell schreibt und Probleme findet und löst.
-
Vielen Dank für die guten Vorschläge!
-
läufer_auf_f7 schrieb:
Ich habe nie ein Buch darüber gelesen. Grob die Threading-Bibliothek von C++ kennen, auf Wikipedia ein paar Artikel über die schlimmsten Fallen lesen und ein bisschen selber rumspielen sollte für die meisten Anwendungen reichen. Das was noch fehlt schnappt man dann nebenher so auf.
Man hört allerdings viel gutes über dieses Buch:
C++ Concurrency in Action | ISBN: 1933988770Wenn ich mal Zeit habe, lese ich das vielleicht auch.
Das Buch hab ich Zuhause und kann ich nur weiterempfehlen. Vor allem das Kapitel ueber Atomics fand ich sehr gut.
-