System::Threading::Interlocked класс

Interlocked class

Предоставляет API для потокобезопасных операций. Это статический тип без сервисов экземпляров. Вы никогда не должны создавать его экземпляры ни при каких обстоятельствах.

class Interlocked

Методы

МетодОписание
static Add(int32_t&, int32_t)Увеличивает значение атомарно.
static Add(int64_t&, int64_t)Увеличивает значение атомарно.
static CompareExchange(T&, T, T)Сравнивает и меняет значение переменной: проверяет, равно ли переменная определённому значению, и сохраняет новое значение только если текущее значение соответствует ожидаемому.
static CompareExchange(T&, T, T)Сравнивает и меняет значение переменной: проверяет, равно ли переменная определённому значению, и сохраняет новое значение только если текущее значение соответствует ожидаемому. Не реализовано.
static CompareExchange(int32_t&, int32_t, int32_t, bool&)Сравнивает и меняет значение переменной: проверяет, равно ли переменная определённому значению, и сохраняет новое значение только если текущее значение соответствует ожидаемому.
static Decrement(int32_t&)Уменьшает значение атомарно.
static Decrement(int64_t&)Уменьшает значение атомарно.
static Exchange(T&, T)Обменивает значение переменной: сохраняет новое значение и возвращает значение, которое переменная имела непосредственно перед сохранением.
static Exchange(T&, T)Обменивает значение переменной: сохраняет новое значение и возвращает значение, которое переменная имела непосредственно перед сохранением. Не реализовано.
static ExchangeAdd(int32_t&, int32_t)Увеличивает значение атомарно с помощью процедуры exchange-add.
static ExchangeAdd(int64_t&, int64_t)Увеличивает значение атомарно с помощью процедуры exchange-add.
static Increment(int32_t&)Инкрементирует значение атомарно.
static Increment(int64_t&)Инкрементирует значение атомарно.
static Read(int64_t&)Возвращает 64‑битное значение, загруженное атомарно.

См. также