0

異なる JVM 上のリモート Akka アクター間のメッセージで未来を送信することは安全/実行可能ですか? ないと思います。では、どうすれば次のようなことを達成できますか。重要な側面は、応答 (Ack) が将来の結果と、キャンセルを可能にするための参照の両方を返すようにすることです。

case class BigJob()
case class Ack(jobId: Long, result: Future[Int])
case class Cancel(jobID: Long)

val ack = (remoteActor ? BigJob()).mapTo[Ack]

if(changedMyMind) remoteActor ! Cancel(ack.jobID)
else ack.result foreach println

更新: Scala 2.10.1 と Akka 2.1.2 を使用しています

4

1 に答える 1