Gibt es ein Äquivalent für Interlocked.Exchange
für Boolean?Interlocked.Exchange, aber nicht für booleans?
Wie ein atomarer Austausch von Werten, der den vorherigen Wert zurückgibt und keine Sperren erfordert?
Gibt es ein Äquivalent für Interlocked.Exchange
für Boolean?Interlocked.Exchange, aber nicht für booleans?
Wie ein atomarer Austausch von Werten, der den vorherigen Wert zurückgibt und keine Sperren erfordert?
Nein; Verwenden Sie Ganzzahlen anstelle von Booleschen Werten.
Im Prinzip könnte so etwas geschrieben werden (cmpxchg, der zugrunde liegende Prozessorbefehl, kann mit 8, 16, 32 und 64-Bit-Operanden auf x86-, 8-, 16-, 32-, 64- und 128-Bit-Operanden arbeiten) auf x64), aber in der Praxis halten sich die meisten APIs an Zeiger und Doppelzeiger (32 und 64-Bit auf x86, 64 und 128-Bit auf x64) Operanden, weil sie alles sind, was Sie wirklich brauchen.