Le premier modèle que vous avez mentionné a réellement un nom. Il a appelé le modèle de « réacteur », qui transforme des événements basés par vote choisis/attente surveillant en rappels de service entraînés par les événements (je me demande si c'est pourquoi son réacteur appelé). Le réacteur (composants principaux) fait tout le travail et vous pollling sales peut simplement le dire de mettre le feu à un événement quand quelque chose se produit. http://en.wikipedia.org/wiki/Reactor_pattern
Revient à la question dont plus important, bonne il regarde comme vous le besoin d'alwaysd un fil d'ouvrier, pour être celui pour le réacteur ou le fil de processus de moniteur (à moins que le réacteur est lui-même using l'api entraîné par les événements). Si c'est le cas alors que l'avantage du réacteur sont plus évident si vous avez beaucoup de beaucoup d'événements à observer en même temps, comme dire dans votre cas si vous devez surveiller des douzaines de processus/de mutexes alors un réacteur vous sauve le coût d'un fil par moniteur.
D'une part, si son juste une question d'un fil simple d'ouvrier puis pourquoi ajouter la complexité quand vous pouvez facilement contrôler des choses avec un fil de moniteur ? Il est sûr est ambitieux et tentant d'aller de pair avec des conceptions sophistiquées (particulièrement quand vous êtes arrivé à une vous-même) ; Je peux comprendre le recommander :) mais s'occuper de lui, fiabilité, facilité d'utilisation et l'entretien sont plus important que la conception de fantaisie. Après tous, votre utilisateur ne s'inquiète pas des whethers son réacteur basé conception ou pas.
Je propose que vous signaliez d'autres détails, particulièrement en ce qui concerne le scalabity prospecte. Comme, combien d'objets peuvent vous observer en même temps (maximum), combien de processus etc.
Espérer qu'aides…