Класс Semaphore
Представляет объект синхронизации, который управляет общим ресурсом и поддерживает ограниченное число пользователей.
Синтаксис
class Semaphore : public HandleT<HandleTraits::SemaphoreTraits>;
Участники
Общедоступные определения типов
Имя | Описание |
---|---|
SyncLock |
Синоним класса, поддерживающего синхронные блокировки. |
Открытые конструкторы
Имя | Описание |
---|---|
Семафор::Семафор | Инициализирует новый экземпляр класса Semaphore . |
Открытые методы
Имя | Описание |
---|---|
Семафор::Lock | Ожидает, пока текущий объект или объект, связанный с указанным дескриптором, находится в сигнальном состоянии или указанный интервал времени ожидания истек. |
Открытые операторы
Имя | Описание |
---|---|
Семафор::operator= | Перемещает указанный Semaphore дескриптор из объекта в текущий Semaphore объект. |
Иерархия наследования
Semaphore
Требования
Заголовок: corewrappers.h
Пространство имен: Microsoft::WRL::Оболочки
Семафор::Lock
Ожидает, пока текущий объект или объект, связанный с указанным дескриптором, находится в сигнальном состоянии или Semaphore
указанный интервал времени ожидания истек.
SyncLock Lock(
DWORD milliseconds = INFINITE
);
static SyncLock Lock(
HANDLE h,
DWORD milliseconds = INFINITE
);
Параметры
milliseconds
Интервал времени ожидания в миллисекундах. Значение по умолчанию равно INFINITE, что означает неограниченное время ожидания.
ч
Дескриптор Semaphore
объекта.
Возвращаемое значение
Выполнение команды Details::SyncLockWithStatusT<HandleTraits::SemaphoreTraits>
Семафор::operator=
Перемещает указанный Semaphore
дескриптор из объекта в текущий Semaphore
объект.
Semaphore& operator=(
_Inout_ Semaphore&& h
);
Параметры
ч
Ссылка на Rvalue к объекту Semaphore
.
Возвращаемое значение
Ссылка на текущий Semaphore
объект.
Семафор::Семафор
Инициализирует новый экземпляр класса Semaphore
.
explicit Semaphore(
HANDLE h
);
WRL_NOTHROW Semaphore(
_Inout_ Semaphore&& h
);
Параметры
ч
Дескриптор или ссылка rvalue-reference на Semaphore
объект.