El primer patrón que usted mencionó tiene realmente un nombre. Ha llamado el patrón del “reactor”, que transforma acontecimientos basados interrogación selectos/de la espera que supervisan en los servicios repetidos conducidos acontecimiento (me pregunto si ése es porqué su reactor llamado). El reactor (componentes principales) hace todo el trabajo y le pollling sucios puede decirlo simplemente encender un acontecimiento cuando sucede algo. http://en.wikipedia.org/wiki/Reactor_pattern
Está volviendo a la pregunta cuyo más importante, bien mira como usted necesidad del alwaysd un hilo de rosca del trabajador, para ser ése para el reactor o el hilo de rosca de proceso del monitor (a menos que el reactor está sí mismo usar el API conducido acontecimiento). Si ése es el caso entonces que la ventaja del reactor es más obvia si usted tiene muchos muchos acontecimientos a mirar al mismo tiempo, como decir en su caso si usted tiene que supervisar docenas de procesos/de mutexes entonces un reactor le ahorra el coste de un hilo de rosca por monitor.
¿Por una parte, si su apenas una cuestión de un solo hilo de rosca del trabajador entonces porqué agregar la complejidad cuando usted puede manejar fácilmente cosas con un hilo de rosca del monitor? Está seguro es ambicioso y de tentación ir con diseños sofisticados (especialmente cuando usted ha llegado a la una usted mismo); Puedo entender el impulso:) pero importar de él, confiabilidad, facilidad de empleo y el mantenimiento es más importante que diseño de lujo. Después de todos, su usuario no cuida whethers su reactor basado diseño o no.
Sugiero que usted fije otros detalles, especialmente con respecto a scalabity prospecto. Como, cuántos objetos pueden usted mirar al mismo tiempo (máximo), cuántos procesos etc.
Esperar que ayudas…