Compartir a través de


CSingleLock::Lock

Llame a esta función para obtener acceso al recurso controlado por el objeto de sincronización proporcionado al constructor de CSingleLock .

BOOL Lock( 
   DWORD dwTimeOut = INFINITE  
);

Parámetros

  • dwTimeOut
    Especifica la cantidad de tiempo de espera el objeto de sincronización esté disponible (designado). Si Infinito, Lock espera hasta que el objeto se designa antes de volver.

Valor devuelto

Distinto de cero si la función es correcta; si no 0.

Comentarios

Si se designa el objeto de sincronización, Lock se devolverá correctamente y el subproceso ahora posee el objeto. Si el objeto de sincronización nonsignaled (no disponible), Lock esperará el objeto de sincronización que se señalen hasta el número de milisegundos especificada en el parámetro de dwTimeOut . Si el objeto de sincronización no se ha señalado en el tiempo especificado, Lock devuelve el error.

Ejemplo

// 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();
}

Requisitos

encabezado: afxmt.h

Vea también

Referencia

CSingleLock Class

Gráfico de jerarquías