gpt4 book ai didi

scala - 有没有办法在 Scala 食谱 Actor 通信示例中避免无类型的 ActorRef?

转载 作者:行者123 更新时间:2023-12-03 22:05:50 28 4
gpt4 key购买 nike

在 Scala 食谱中:13.3。如何在 Actor 之间进行交流我看到了这个

class Ping(pong: ActorRef) extends Actor { // OMG - ActorRef - no type, help!
var count = 0
def incrementAndPrint { count += 1; println("ping") }
def receive = {
case StartMessage =>
incrementAndPrint

我在我自己的代码中也有几个地方有这个 ActorRef我不喜欢它,因为我喜欢 type safety .有没有办法避免上面的 pong例子?

旁注:我知道我可以在命名时使用“actorFor”,但作为 DI 怪胎我宁愿在构造函数/参数中传递它。

最佳答案

Akka 3.0 的一些东西正在开发中,例如,请参阅此预告主题:https://mobile.twitter.com/RayRoestenburg/status/510511346040197120

现在有一种使用自定义询问(问号)的类型安全模式。这是一篇关于它的博客:
http://www.warski.org/blog/2013/05/typed-ask-for-akka/

不过这有点笨拙,可能不值得麻烦。

另一种方法是创建类型化 API 并将您的角色包装在其中。

关于scala - 有没有办法在 Scala 食谱 Actor 通信示例中避免无类型的 ActorRef?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25832364/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com