Als nur Referenztypen und ein paar Primitive (einschließlich Float, aber nicht doppelt, ich bin mir nicht sicher, der Grund warum, ich bin glücklich, warum zu hören) kann als volatil erklärt werden, wenn ich ein Doppelpack in einer Klasse deklariere es dann als flüchtig (wie unten), wird die Doppeleigenschaft "lesen schreiben" threadsicher sein wie jede andere flüchtige, oder sollte ich immer noch auf Sperren achten?C# flüchtige Doppel
public class MyThreadedClass
{
volatile VolatileDouble voldub;
}
public class VolatileDouble
{
public double Double { get; set; }
}
Art der Verdacht auf, dass nur die Referenz flüchtig war, daher die Frage. Danke für die Bestätigung – johnc
wenn er sichergestellt hat, dass der VolatileDouble unveränderlich ist, sollte er keine Probleme haben, richtig? –
Danke auch für die Interlocked und BitConverter Vorschläge, löste einen ganz neuen Gedankengang – johnc