Compartilhar via


Classe Semaphore

Representa um objeto de sincronização que controla um recurso compartilhado que pode dar suporte a um número limitado de usuários.

Sintaxe

class Semaphore : public HandleT<HandleTraits::SemaphoreTraits>;

Membros

Typedefs públicos

Nome Descrição
SyncLock Um sinônimo para uma classe que dá suporte a bloqueios síncronos.

Construtores públicos

Nome Descrição
Semaphore::Semaphore Inicializa uma nova instância da classe Semaphore.

Métodos públicos

Nome Descrição
Semaphore::Lock Aguarda até que o objeto atual, ou o objeto associado ao identificador especificado, esteja no estado sinalizado ou o intervalo de tempo limite especificado tenha decorrido.

Operadores públicos

Nome Descrição
Semaphore::operator= Move o identificador especificado de um objeto Semaphore para o objeto Semaphore atual.

Hierarquia de herança

Semaphore

Requisitos

Cabeçalho: corewrappers.h

Namespace: Microsoft::WRL::Wrappers

Semaphore::Lock

Aguarda até que o objeto atual, ou o objeto Semaphore associado ao identificador especificado, esteja no estado sinalizado ou o intervalo de tempo limite especificado tenha decorrido.

SyncLock Lock(
   DWORD milliseconds = INFINITE
);

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

Parâmetros

milliseconds
O intervalo de tempo limite em milissegundos. O valor padrão é INFINITE, que aguarda indefinidamente.

h
Um identificador para um objeto Semaphore.

Valor de retorno

Uma Details::SyncLockWithStatusT<HandleTraits::SemaphoreTraits>

Semaphore::operator=

Move o identificador especificado de um objeto Semaphore para o objeto Semaphore atual.

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

Parâmetros

h
Referência rvalue a um objeto Semaphore.

Valor de retorno

Uma referência ao objeto Semaphore atual.

Semaphore::Semaphore

Inicializa uma nova instância da classe Semaphore.

explicit Semaphore(
   HANDLE h
);

WRL_NOTHROW Semaphore(
   _Inout_ Semaphore&& h
);

Parâmetros

h
Um identificador ou uma referência rvalue a um objeto Semaphore.