Future回调

有时你只需要监听 Future 的完成事件, 对其进行响应,不是创建新的Future,而仅仅是产生副作用. Akka 为这种情况准备了 onComplete, onSuccess 和 onFailure, 而后两者仅仅是第一项的特例。


future onSuccess {
  case "bar"     ⇒ println("Got my bar alright!")
  case x: String ⇒ println("Got some random string: " + x)
}
future onFailure {
  case ise: IllegalStateException if ise.getMessage == "OHNOES" ⇒
  //OHNOES! We are in deep trouble, do something!
  case e: Exception ⇒
  //Do something else
}
future onComplete {
  case Right(result) ⇒ doSomethingOnSuccess(result)
  case Left(failure) ⇒ doSomethingOnFailure(failure)
}


你可能感兴趣的:(Akka编程)