[ThreadStatic] private static Foo _foo; public static Foo CurrentFoo { get { if (_foo == null) { _foo = new Foo(); } return _foo; } }
Ist der vorherige Code Thread sicher? Oder müssen wir die Methode sperren?Ist dies eine Thread-sichere Möglichkeit, eine [ThreadStatic] zu initialisieren?
Das ist, wo mein Beispiel herkommt. Ich versuche nur herauszufinden, ob es für einen Thread möglich ist, _foo == null zu erhalten, aber dann tritt ein Threadwechsel auf und ein weiterer Thread _foo wird neu, obwohl er nicht null ist? –
Nein. Ein _foo pro Thread, also haben Kontextwechsel keine Auswirkungen. – Will