A と B の 2 つのアクターがいます。擬似コードは次のようになります。
if A has a given state
return "ok"
else
send a message to B and return "ok" when B is done handling the message
これは、Await を使用した私の実装です。
val f1 = (A ? GetState).mapTo[Option[State]]
f1.map {
case Some(state) => "OK"
case None =>
val f2 = B ? Process
Await.result(f2, 1 seconds) // todo: get rid of this
"OK"
}
これを Await なしで実装する方法がわかりません。誰?