L'approche évidente et la plus simple serait de commencer un nouveau thread dans le sujet pour chacun des observateurs inscrits au sujet, et laisser ces fils à exécutez chacune des méthodes "update()" des Observateurs.
Une approche plus sophistiquée serait d'utiliser une classe de middleware comme un bus pour laisser le sujet « envoyer événements » à elle. Cette classe de middleware utiliserait plusieurs threads pour invoquer tous les observateurs "enregistrés", mais cela commence à diverger du modèle Observer classique. Quoi qu'il en soit, avec cette approche, vous empêchez le sujet de traiter les discussions. Cette approche serait très flexible pour mettre à l'échelle "types d'événements", avec de nombreux sujets et de nombreux observateurs s'inscrivant à la classe middleware pour des types arbitraires d'événements.