假设我想在 akka 中实现 ProgrammableRemote -
ProgrammableRemote
- WatchMovie
1. Tv ! PowerOn
1.1 Tv ! ChangeInput 3
2. DVD ! PowerOn
3. AVReceiver ! PowerOn
3.1 AVReceiver ! SetInput 'DVD'
我可以使用期货对 1 和 1.1(以及 3. 和 3.1)进行排序。但是,这将导致 1.1 在与参与者的接收线程不同的线程上运行。如果我使用“pipeTo self”,我将需要以“接收”方法处理来自电视的“开机完成”消息的情况。
理想情况下,我希望能够扩展演员的接收,以根据未完成的请求动态处理来自其他演员的回复。这个用例在akka中有什么解决方案吗?