我使用Akka框架与Java API,所以然后我试着了解框架的源代码 - 我不能,因为它是用Scala写的,很不幸我不知道这种语言。 那么,获得ActorRef指向自我的self()
和getSelf()
方法有什么区别?获取Akka演员的自我参考差异
UPDATE:那么context()和getContext()怎么样?我注意到他们返回actor中不同类型的对象,从UntypedActor扩展。
我使用Akka框架与Java API,所以然后我试着了解框架的源代码 - 我不能,因为它是用Scala写的,很不幸我不知道这种语言。 那么,获得ActorRef指向自我的self()
和getSelf()
方法有什么区别?获取Akka演员的自我参考差异
UPDATE:那么context()和getContext()怎么样?我注意到他们返回actor中不同类型的对象,从UntypedActor扩展。
self()
是惯用的scala API,getSelf()
是惯用的Java API。它们返回相同的值,但getSelf()
只能从UntypedActor
的子类访问,UntypedActor
是要从Java扩展到实现参与者的类。
没有区别:它们指向相同的最终值。
谢谢,希望我能找到时间学习Scala,以便我能够理解像Akka这样的库的源代码。 –
我想问题更新的答案与“...只能从UntypedActor的子类访问,这是从Java扩展到实现参与者的类。”? –
这是实际的代码: ''' DEF的getContext():UntypedActorContext = context.asInstanceOf [UntypedActorContext] ''' 换言之,上下文是完全一样的实施的下面,它是加入一些Java便利接口。 –
顺便说一下,在Akka中为相同的API使用Acala和Java版本是非常平常的。通常,javadoc中有标记表示JAVA API和SCALA API,但在较旧的代码中,这些代码在几个地方似乎缺失。 –