Theards mit Rückgabe
-
Shade Of Mine schrieb:
Blue-Tiger schrieb:
Na ja, solange er nicht direkt beim Schreiben unterbrochen wird, ist das ja immer noch atomar: Zu jedem Zeitpunkt hat der int entweder noch den alten Wert oder den Neuen
Ja.
Aber wenn du Pech hast siehst du nie den neuen WertFuer sowas eignet sich Compare and Swap - kann man schoen in eine atomic Klasse packen. Siehe zB die implementierung von boost shared_ptr.
Warum seh ich den neuen Wert nie?
Ich kann verstehen wenn ich ihn "nicht sofort" seh (Race Condition), aber angenommen der Code rennt in einer Schleife: irgendwann seh ich ihn doch, oder? Oder denkst du an den Fall, dass der Compiler einfach das Read rausoptimiert (bzw. optimieren darf)?