java akka中AbstractActor、UntypedActor和AbstractBehavior的区别是什么?
这里是Akka的新手,我有三个不同的例子,这三个例子都使用非常不同的类来实现一个actor
抽象演员:https://www.baeldung.com/akka-with-spring
非类型转换器:https://www.baeldung.com/akka-actors-java
抽象行为:https://doc.akka.io/docs/akka/current/typed/guide/tutorial_1.html
前两个看起来非常简单明了,类似于我在Erlang上使用和看到的actor模型实现。 官方文件中的那个看起来是最复杂的
所以我有点困惑,应该在什么时候使用哪一个
# 1 楼答案
akka.actor.typed.javadsl.AbstractBehavior
是新的针对参与者的“类型化”Java API,它稍微更详细一些,但为您提供了更好的类型安全性,以换取这种烦躁。我们建议从Akka开始的新项目从2.6开始使用它,并继续前进李>akka.actor.AbstractActor
是用于参与者的“经典”(Akka 2.6之前)Java API,它是在Java 8中添加的对Lambdas的支持。它不会因为新的API而消失,但会存在很长一段时间,因为许多系统都是使用它构建的李>akka.actor.UntypedActor
在Java8之前是一个较旧的Java API,在Akka 2.5中被弃用,现在(2.6)被删除李>