为什么我没有收到询问超时异常?

拉曼米什拉

我有 2 名演员,一名监督员和一名儿童演员。

监督员:

class DemoActorSupervisor(implicit val system: ActorSystem, config: Config) extends Actor {

  val childActor: ActorRef = context.actorOf(FromConfig.props(Props[DemoActorChild]), "DemoChildActor")

  context.watch(childActor)

  override def receive: Receive = {
    case s: String =>
      childActor forward s
  }
}

童星:

class DemoActorChild extends Actor {
  def receive: Receive = {
    case s: String =>
      Thread.sleep(100)
      Future.successful(true) pipeTo (sender)
  }
}

主要方法:

object ABC extends App {
  implicit val system: ActorSystem = ActorSystem("Demo")

  implicit val config: Config = ConfigFactory.load()

  implicit val timeout: Timeout = Timeout(5, TimeUnit.MILLISECONDS)

  val supervisor = system.actorOf(DemoActorSupervisor.props(), "DemoSupervisor")

  val x: Future[Boolean] = (supervisor ? ("ASK")).mapTo[Boolean]
  x.foreach(println)
}

我已将询问超时设置为 5 毫秒,并向主管演员发出询问电话。它将消息转发给子actor。在我Thread.sleep(100)逻辑上放置的子演员中,我应该得到询问超时异常,因为我已将超时设置为 5 毫秒,而孩子需要超过 100 毫秒来响应,但我没有收到询问超时异常。有人可以告诉我代码有什么问题吗?我怎样才能得到询问超时异常。

阿列克谢·伊萨琴科夫

你可以在描述中看到Future.foreach

一旦值可用,将在将来异步处理该值。

警告:如果此未来从未完成或以失败完成,则不会被调用。

如果你想使用Future.foreach,你应该写一些类似的东西:

x.map(Success(_)).recover({case exception => Failure(exception)}).foreach(println) 

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么我收到异常错误indexOutOfRangeException?

来自分类Dev

为什么我没有收到此PG通知?

来自分类Dev

为什么没有给我这种方法异常

来自分类Dev

为什么我的异常没有被Laravel destroy方法捕获?

来自分类Dev

为什么我会收到类强制转换异常?

来自分类Dev

为什么我在DropDownListFor中的帖子中收到null异常?

来自分类Dev

为什么我的代码没有捕获到异常?

来自分类Dev

为什么我在TempData中收到NullReference异常

来自分类Dev

为什么我没有收到错误在此Java for循环?

来自分类Dev

为什么我在解析数据帧时收到错误,但单行却没有收到错误?

来自分类Dev

为什么我的诺言的catch子句没有捕获异常?

来自分类Dev

为什么我没有收到phantomjs页面响应?

来自分类Dev

为什么我在Android中收到Null Pointer异常

来自分类Dev

为什么我收到异常错误indexOutOfRangeException?

来自分类Dev

为什么我收到Indy EIdOSSLUnderlyingCryptoError异常

来自分类Dev

为什么我的异常没有被Laravel destroy方法捕获?

来自分类Dev

为什么我的异常没有被捕获?

来自分类Dev

为什么我没有在SignalR上收到带有复杂对象作为参数的事件?

来自分类Dev

为什么我的客户没有收到任何字节?

来自分类Dev

为什么没有收到正确的数据?

来自分类Dev

为什么我的减速器没有收到我的动作?(使用React和Redux)

来自分类Dev

为什么我收到异常ArgumentOutOfRangeException:参数超出范围。

来自分类Dev

为什么我收到此 Python 脚本的连接拒绝异常?

来自分类Dev

为什么我没有收到从 JS 到 PHP 的变量?

来自分类Dev

为什么我没有收到插槽?

来自分类Dev

为什么我收到找不到文件的异常?

来自分类Dev

为什么我会收到此异常 (gRCP)

来自分类Dev

为什么我的 Flink 独立集群没有收到我的工作?

来自分类Dev

为什么我在运行此代码时收到异常?

Related 相关文章

  1. 1

    为什么我收到异常错误indexOutOfRangeException?

  2. 2

    为什么我没有收到此PG通知?

  3. 3

    为什么没有给我这种方法异常

  4. 4

    为什么我的异常没有被Laravel destroy方法捕获?

  5. 5

    为什么我会收到类强制转换异常?

  6. 6

    为什么我在DropDownListFor中的帖子中收到null异常?

  7. 7

    为什么我的代码没有捕获到异常?

  8. 8

    为什么我在TempData中收到NullReference异常

  9. 9

    为什么我没有收到错误在此Java for循环?

  10. 10

    为什么我在解析数据帧时收到错误,但单行却没有收到错误?

  11. 11

    为什么我的诺言的catch子句没有捕获异常?

  12. 12

    为什么我没有收到phantomjs页面响应?

  13. 13

    为什么我在Android中收到Null Pointer异常

  14. 14

    为什么我收到异常错误indexOutOfRangeException?

  15. 15

    为什么我收到Indy EIdOSSLUnderlyingCryptoError异常

  16. 16

    为什么我的异常没有被Laravel destroy方法捕获?

  17. 17

    为什么我的异常没有被捕获?

  18. 18

    为什么我没有在SignalR上收到带有复杂对象作为参数的事件?

  19. 19

    为什么我的客户没有收到任何字节?

  20. 20

    为什么没有收到正确的数据?

  21. 21

    为什么我的减速器没有收到我的动作?(使用React和Redux)

  22. 22

    为什么我收到异常ArgumentOutOfRangeException:参数超出范围。

  23. 23

    为什么我收到此 Python 脚本的连接拒绝异常?

  24. 24

    为什么我没有收到从 JS 到 PHP 的变量?

  25. 25

    为什么我没有收到插槽?

  26. 26

    为什么我收到找不到文件的异常?

  27. 27

    为什么我会收到此异常 (gRCP)

  28. 28

    为什么我的 Flink 独立集群没有收到我的工作?

  29. 29

    为什么我在运行此代码时收到异常?

热门标签

归档