Condividi tramite


CSingleLock::Lock

Chiamare la funzione per accedere alla risorsa controllata dall'oggetto di sincronizzazione fornito al costruttore CSingleLock.

BOOL Lock(
   DWORD dwTimeOut = INFINITE 
);

Parametri

  • dwTimeOut
    Specifica il tempo di attesa l'oggetto di sincronizzazione siano disponibili (segnalato).Se INFINITE, Lock attesa finché non viene segnalato l'oggetto prima di restituire.

Valore restituito

Diverso da zero se la funzione è riuscita, in caso contrario 0.

Note

Se l'oggetto di sincronizzazione viene segnalato, Lock restituito correttamente e il thread ora è proprietario dell'oggetto.Se l'oggetto di sincronizzazione non viene segnalato non disponibile), Lock attenderà l'oggetto di sincronizzazione per essere segnalato fino al numero di millisecondi specificato nel parametro del dwTimeOut.Se l'oggetto di sincronizzazione non è stato segnalato la quantità di tempo specificato, Lock restituito l'errore.

Esempio

// m_Mutex is a data member (of type CMutex)
// of an existing class that implements the resource being shared.

// Relate the synchronization object (m_Mutex) with
// our CSingleLock object. 
CSingleLock singleLock(&m_Mutex);

// Attempt to lock the shared resource
if (singleLock.Lock(100))    // Wait 100 ms...
{
    // We were able to lock the resource;
    // we may now work with the data associated with the mutex...

    // Now that we are finished, unlock the resource for others.
    singleLock.Unlock();
}

Requisiti

Header: afxmt.h

Vedere anche

Riferimenti

Classe di CSingleLock

Grafico della gerarchia