Compartir a través de


CMutex::CMutex

Construye un objeto denominado o sin nombre de CMutex .

CMutex( 
   BOOL bInitiallyOwn = FALSE, 
   LPCTSTR lpszName = NULL, 
   LPSECURITY_ATTRIBUTES lpsaAttribute = NULL  
);

Parámetros

  • bInitiallyOwn
    Especifica si el subproceso que crea el objeto de CMutex tiene inicialmente acceso al recurso controlado por la exclusión mutua.

  • lpszName
    Nombre del objeto de CMutex . Si existe otra exclusión mutua con el mismo nombre, lpszName debe proporcionarse si el objeto se utiliza los límites de un proceso. Si NULL, la exclusión mutua es sin nombre. Si el nombre de una exclusión mutua existente, el constructor compila un nuevo objeto de CMutex que haga referencia el mutex con ese nombre. Si el nombre de un objeto de sincronización existente que no sea mutex, la construcción no.

  • lpsaAttribute
    Atributos de seguridad del objeto de exclusión mutua. Para obtener una descripción completa de esta estructura, vea SECURITY_ATTRIBUTES en Windows SDK.

Comentarios

Para obtener acceso o liberar un objeto de CMutex , crear un objeto de CMultiLock o de CSingleLock y llamar al bloqueo y miembro de Unlock funciona. Si el objeto de CMutex está siendo independiente utilizado, llame a su función miembro de Unlock para que el mercadola.

Nota de seguridadNota sobre la seguridad

Después de crear el objeto de CMutex , utilice GetLastError de asegurarse que no existían mutex ya.Si existían mutex inesperado, pueden indicar que elimine las plantas débiles el proceso se coloca en cuclillas y puede utilizar diseñado mutex malintencionados.En este caso, el procedimiento seguridad-consciente recomendado es cerrar el identificador y continuar como si hay un error en la creación del objeto.

Requisitos

encabezado: afxmt.h

Vea también

Referencia

CMutex Class

Gráfico de jerarquías