Вопрос

Я видел несколько мест, цитирующих следующий бит для C# Spec: «Помимо библиотечных функций, разработанных для этой цели, нет никакой гарантии атомного модификационного модификации чтения». Может ли кто -нибудь указать мне на эти библиотечные функции?

Это было полезно?

Решение

То Блокируется Класс должен предоставить вам то, что вы ищете; такие как Приращение и Уменьшение.

Другие советы

Я думаю, что это относится к таким функциям, как Interlocked.CompareExchange.

Этот метод может быть использован, например, атомно обновить double:

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);
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top