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)Увеличивает значение атомарно с помощью процедуры обмена‑добавления.
static ExchangeAdd(int64_t&, int64_t)Увеличивает значение атомарно с помощью процедуры обмена‑добавления.
static Increment(int32_t&)Инкрементирует значение атомарно.
static Increment(int64_t&)Инкрементирует значение атомарно.
static Read(int64_t&)Возвращает 64‑битное значение, загруженное атомарно.

См. также