V
dachschaden_off schrieb:
volkard schrieb:
[Threads] sind, behaupte ich mal, in fast allen bezahlten Anwendungen nicht besser als Prozesse.
Datenaustausch zwischen Threads eines Prozesses geht richtig schnell.
belegen keine doppelten COW-Einträge in der Page Table (ist egal, ob die COW oder RO sind, Hauptsache ist, sie existieren und können somit zu Page Walks führen).
sind wesentlich schneller zu erstellen (ein Benchmark von mir aus dem Jahr 2013 auf Linux zeigte, dass Threads so um den Fatkor 50 schneller erstellt werden als zu forken).
(auf Linux) kannst du deinen eigenen Speicher als Threadstack angeben, was noch mal die Leistung hochbringt.
Gegenargumente?
[Threads] sind, behaupte ich mal, in fast allen bezahlten Anwendungen nicht besser als Prozesse.
Mir geht es nicht um theoretische Mikromessungen oder Gamecoding, sondern das, wo der Kunde fett Geld bezahlt für die Software.
Die Mikroargumente kenne ich alle, klar, ich bin auch ein Fan davon, dem Thread 64k eigenen Stackspeicher unterzuschubsen, und dann auch gleich noch innerhalb des Threads davon 32k abzuwacken und ein selbergeschriebenes malloc/free darauf aufsetzten.