Pregunta

Me preguntaba si alguna vez tiene sentido utilizar un mutex o de semáforos cuando sólo hay un hilo?.

Gracias por su ayuda.

¿Fue útil?

Solución

Protección hilo poner en mi componentes porque son componentes reutilizables y escalables la intención de trabajar en cualquier entorno que puedo anticipar realista. Muchas veces se utilizan inicialmente en un entorno de un solo hilo. Muchas veces el alcance de las expande de ejecución para incluir más hilos. Entonces no tengo que perseguir a los recursos para proteger a los escenarios de nuevo acceso.

Otros consejos

objeto mutex puede tener sentido, ya objeto mutex se puede utilizar para el sistema de intercambio de amplia, en lugar de compartir interna de todo el proceso. Por ejemplo, se puede utilizar un objeto mutex a evitar que una aplicación sea puesto en marcha dos veces .

Esto puede ser un poco por ahí, pero digamos que usted está escribiendo una función recursiva y desea que cada nivel se registre con un recurso independiente. De esta manera se puede mantener la responsabilidad de la limpieza de los recursos en un solo lugar (El fondo de recursos) .

suena como una pregunta con trampa. Técnicamente, sí. Un mutex llamado se puede utilizar para sincronizar múltiples procesos que contienen un solo hilo en cada uno.

Puede utilizar system-wide semaphores (y exclusiones mutuas incluso) para hacer inter-process communication.

Puede señal de un proceso de un solo subproceso a otro proceso de un solo subproceso por acquire()/release()-ción en un semáforo con nombre, por ejemplo.

En caso de que el entorno admite interrupciones del sistema que añade un comportamiento no lineal. Semáforo se puede utilizar con el fin de dormir en hilo principal hasta desencadenantes de interrupción.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top