运行 作为演员同时发挥作用

Running functions simultaneously from an akka actor

从演员 (akka.actor.Actor) 我怎样才能同时执行一个方法两次?尝试用 Futures 来做,但是如果 future 没有响应,actor 就不会接受更多的请求...

一般情况下,演员不应该阻止。与演员打交道,你应该以数据流的方式思考。画一个这样的数据流图:

          --> methodCall1 --> |----------|
 actor1 /                     |  actor2  |  
        \ --> methodCall2 --> |__________|

Actor2 可以作为 Akka actor 来实现,它计算传入的消息并在两条消息都到达时做出反应。在这种情况下,methodCall1methodCall 必须知道 actor2 并向它发送消息。

或者 actor2 可以是 CompletableFuture,它派生自使用方法 thenCombine.

的方法调用之一的未来