Ich frage mich, was ist der "beste" Weg, um Daten thread-sicher zu machen.Fadensicherheit ... Was ist meine "beste" Vorgehensweise?
Speziell muss ich eine verknüpfte Liste über mehrere Threads schützen - ein Thread könnte versuchen, davon zu lesen, während ein anderer Thread Daten hinzufügt/entfernt, oder sogar die gesamte Liste freigibt. Ich habe über Schlösser gelesen; Sie scheinen der am häufigsten verwendete Ansatz zu sein, aber sie können offensichtlich problematisch sein (Deadlocks). Ich habe auch über Atom-Operationen sowie Thread-lokalen Speicher gelesen.
Was wäre Ihrer Meinung nach meine beste Vorgehensweise? Was ist der Ansatz, den die meisten Programmierer verwenden, und aus welchem Grund?
beste Ansatz ist abhängig von der Sprache, die Sie verwenden. Zum Beispiel in Erlang ist dies ein Nicht-Problem –
Yep, Erlangs _intrinsically_ Message-Weitergabe (so Multiprocessing ist die süßeste Sache in ihr) - in meiner Antwort skizzierte ich, wie man diesen glücklichen Zustand in anderen Sprachen wie Python bauen. –