【问题标题】:Difference between Akka ask and tell Pattern?Akka ask 和 tell Pattern 的区别?
【发布时间】:2017-03-20 10:59:53
【问题描述】:

我在阅读akka文档后发现:Ask会发送消息和

返回future并等待超时。同样,Tell会发送消息并

立即返回。我发现两者都一样,因为在这两种情况下,请求都是

异步生成,必须等待响应。Tell 实际上是什么

return?在哪种情况下使用 Ask 比使用 Tell 更好,反之亦然?

【问题讨论】:

    标签: scala akka


    【解决方案1】:

    当你的actor Ask() 到另一个actor 等待回复(你提到的Future)并且最终会暂停执行直到Future 值可用。 当你的 Actor 告诉另一个 Actor 某事时,它只是抛出消息,不期望回复并继续执行。

    所以第一个更适合参与者之间的信息请求,另一个更适合裸信息发送。由您决定最适合您正在从事的项目的内容。

    【讨论】:

      【解决方案2】:

      当您在actor中Ask()时,发送者将等待Future响应 而当您在演员中使用 Tell() 时,您还必须将 ActorRef 发送到将发送响应的位置。

      【讨论】:

        猜你喜欢
        • 2019-04-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-11-16
        • 2013-09-01
        • 1970-01-01
        • 2021-10-25
        • 2014-05-16
        相关资源
        最近更新 更多