Frage

Ich habe ein paar Plätze unter Angabe der folgenden Bit des C # spec gesehen: „Abgesehen von den Bibliotheksfunktionen für diesen Zweck konzipiert, gibt es keine Garantie für die Atom-Read-Modify-Write.“ Kann jemand Punkt mich auf diese Bibliotheksfunktionen?

War es hilfreich?

Lösung

Die Verschlungene Klasse sollten Sie mit dem, was Sie suchen ; wie Increment und Decrement .

Andere Tipps

ich denke, es zu Funktionen beziehen wie Interlocked.CompareExchange .

Diese Methode kann verwendet werden, um beispielsweise atomar ein double aktualisieren:

static void Add(ref double field, double amount)
{
    double before, after;
    do
    {
        before = field;
        after = before + amount;
    }
    while (Interlocked.CompareExchange(ref field, after, before) != before);
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top