【发布时间】:2018-04-18 13:45:10
【问题描述】:
我一直在摸不着头脑去理解如何阅读这个函数:
private def greeterBehavior(currentGreeting: String): Behavior[Command] =
Actor.immutable[Command] { (ctx, msg) =>
msg match {
case WhoToGreet(who) =>
greeterBehavior(s"hello, $who")
case Greet =>
println(currentGreeting)
Actor.same
}
}
问题:
1 ) 函数接受字符串并返回 Behavior[Command] 。 (理解)
但是.. Actor.immutable[Command] 是什么?
这是类型转换吗?或者它是一个对象?
2) 如果我必须理解这样的语法,我可以参考的最佳地点或书籍是什么?
【问题讨论】:
-
散文文档建议这应该是
akka.typed.scaladsl.Actor-object。但是:1)我在网上找不到任何 scaladocs。 2) github 上的the packageakka-actor-typed/src/main/scala/akka/actor/typed/scaladsl中甚至没有Actor.scala。我个人觉得文档的状态(或者更确切地说,缺乏文档)和包的组织有点令人惊讶。
标签: scala akka akka-typed