c# - que - thread sync black squad
Monitor vs Mutex en c# (3)
Un Mutex se puede compartir entre procesos, y es mucho más pesado que un Monitor.
Use un monitor a menos que necesite sincronizar a través de los límites del proceso.
Posible duplicado:
¿Cuáles son las diferencias entre varias opciones de sincronización de subprocesamiento en C #?
¿Cuál es la diferencia entre un Monitor y un Mutex en C #?
¿Cuándo usar un monitor y cuándo usar un Mutex en C #?
Una buena fuente de consejos sobre este tema es el "Enhebrado en C #" de Joseph Albahari. Todo el contenido está disponible en línea. En mi opinión, vale la pena leer todo el libro , pero puedes verificar estas partes:
En Mutex .
Aunque no cubre .NET 4.0 nuevas construcciones paralelas , es un muy buen punto de partida.
Actualización : el libro ha sido actualizado. Ahora, cubre .NET 4.0 Parallel Programming en su parte 5 .
Se administra un Monitor
es más liviano, pero está restringido a su AppDomain
. Se puede nombrar un Mutex
, y puede abarcar procesos (permitiendo algunos escenarios simples de IPC entre aplicaciones), y se puede usar en código que quiere un manejador de espera).
Para la mayoría de los escenarios simples, Monitor
(a través de lock
) está bien.