Las secciones críticas no son objetos del kernel. No están identificados con ningún mango. Solo se pueden usar para sincronizar los hilos que pertenecen al mismo proceso. No se pueden usar para la sincronización en todo el proceso.
CSingleLock (supongo que usted está refiriendo esto como un bloqueo, en este contexto) es una clase contenedora que usa el concepto RAII. Le ayuda a adquirir el objeto de sincronización de subprocesos (en su constructor) y llama a la API de bloqueo y desbloqueo de una manera fácil. (ocultando todos los detalles internos de los objetos de sincronización que está utilizando).
CSingleLock cuando se utiliza con secciones críticas, no se puede utilizar en el proceso. Donde como Mutex se puede usar para este propósito.
Cuando un hilo adquiere Mutex y ningún otro hilo puede adquirir el Mutex, se dice que el estado del Mutex está en estado No signatario. SI el Mutex está disponible y no se han adquirido hilos, se encuentra en estado Signeled.
Son lo mismo para mí, supongo que está utilizando una biblioteca que hace alguna diferencia entre los tres (Win32?). –
¿Está diciendo que Bloqueos como CSingleLock también admite la sincronización de subprocesos cuando se trata de enrutar procesos? Pensé que solo Mutex lo apoya. Por favor corrígeme si estoy equivocado – ckv