Поделиться через


Класс Mutex

Представляет объект синхронизации, который исключительно управляет общим ресурсом.

Синтаксис

class Mutex : public HandleT<HandleTraits::MutexTraits>;

Участники

Общедоступные определения типов

Имя Описание
SyncLock Синоним класса, поддерживающего синхронные блокировки.

Открытый конструктор

Имя Описание
Mutex::Mutex Инициализирует новый экземпляр класса Mutex.

Общедоступные члены

Имя Описание
Мьютекс::Lock Ожидает, пока текущий объект или объект, связанный с указанным дескриптором, освобождает мьютекс или Mutex указанный интервал времени ожидания истек.

Общедоступный оператор

Имя Описание
Mutex::operator= Назначает (перемещает) указанный Mutex объект текущему Mutex объекту.

Иерархия наследования

Mutex

Требования

Заголовок: corewrappers.h

Пространство имен: Microsoft::WRL::Оболочки

Мьютекс::Lock

Ожидает, пока текущий объект или объект, связанный с указанным дескриптором, освобождает мьютекс или Mutex указанный интервал времени ожидания истек.

SyncLock Lock(
   DWORD milliseconds = INFINITE
);

static SyncLock Lock(
   HANDLE h,
   DWORD milliseconds = INFINITE
);

Параметры

milliseconds
Интервал времени ожидания в миллисекундах. Значение по умолчанию равно INFINITE, что означает неограниченное время ожидания.

ч
Дескриптор Mutex объекта.

Возвращаемое значение

Mutex::Mutex

Инициализирует новый экземпляр класса Mutex.

explicit Mutex(
   HANDLE h
);

Mutex(
   _Inout_ Mutex&& h
);

Параметры

ч
Дескриптор или ссылка rvalue на дескриптор Mutex объекта.

Замечания

Первый конструктор инициализирует Mutex объект из указанного дескриптора. Второй конструктор инициализирует объект из указанного дескриптора, а затем перемещает Mutex владение мьютексом в текущий Mutex объект.

Mutex::operator=

Назначает (перемещает) указанный Mutex объект текущему Mutex объекту.

Mutex& operator=(
   _Inout_ Mutex&& h
);

Параметры

ч
Ссылка rvalue-на Mutex объект.

Возвращаемое значение

Ссылка на текущий Mutex объект.

Замечания

Дополнительные сведения см. в разделе "Семантика перемещения" в деклараторе ссылки Rvalue: &>.