гм, я уже второй раз при разработке гуёвых приложений "скатываюсь" во что-то вроде системы на акторах.
У меня появляются компоненты, который создают некоторые "задачи", которые помещаются в очередь и разбираются другими компонентами
Но результат возвращается в виде ивентов\сигналов, на которые подписываются компоненты, создавшие "задачи"