Condividi tramite


Classe Semaphore

Rappresenta un oggetto di sincronizzazione che controlla una risorsa condivisa in grado di supportare un numero limitato di utenti.

Sintassi

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

Membri

Typedef pubblici

Nome Descrizione
SyncLock Sinonimo di una classe che supporta blocchi sincroni.

Costruttori pubblici

Nome Descrizione
Semaforo::Semaforo Inizializza una nuova istanza della classe Semaphore.

Metodi pubblici

Nome Descrizione
Semaforo::Lock Attende che l'oggetto corrente o l'oggetto associato all'handle specificato si trova nello stato segnalato o che sia trascorso l'intervallo di timeout specificato.

Operatori pubblici

Nome Descrizione
Semaforo::operator= Sposta l'handle specificato da un Semaphore oggetto all'oggetto corrente Semaphore .

Gerarchia di ereditarietà

Semaphore

Requisiti

Intestazione: corewrappers.h

Spazio dei nomi: Microsoft::WRL::Wrappers

Semaforo::Lock

Attende che l'oggetto corrente o l'oggetto Semaphore associato all'handle specificato si trova nello stato segnalato o che sia trascorso l'intervallo di timeout specificato.

SyncLock Lock(
   DWORD milliseconds = INFINITE
);

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

Parametri

milliseconds
Intervallo di timeout, espresso in millisecondi. Il valore predefinito è INFINITE, che attende per un periodo illimitato.

h
Handle di un Semaphore oggetto .

Valore restituito

Comando Details::SyncLockWithStatusT<HandleTraits::SemaphoreTraits>

Semaforo::operator=

Sposta l'handle specificato da un Semaphore oggetto all'oggetto corrente Semaphore .

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

Parametri

h
Rvalue-reference a un Semaphore oggetto .

Valore restituito

Riferimento all'oggetto corrente Semaphore .

Semaforo::Semaforo

Inizializza una nuova istanza della classe Semaphore.

explicit Semaphore(
   HANDLE h
);

WRL_NOTHROW Semaphore(
   _Inout_ Semaphore&& h
);

Parametri

h
Handle o riferimento rvalue a un Semaphore oggetto .