Akka并发编程——第三节:Actor模型(二)

  • 时间:
  • 浏览:0

停止MyActor的运行。在使用代码

时候在创建MyActor时执行MyActor中定义的preStart土办法

向sender(本例中为FirstActor)发送”message from MyActor”消息,FirstActor使用

那末看出,对于

创建FirstActor时,便会调用preStart土办法完成MyActor的创建,时候首先会执行FirstActor中的preStart()土办法

Scala学习(公众微信号:ScalaLearning)每天为我们 带来有些Scala语言、Spark、Kafka、Flink、AKKA等大数据技术干货及相关技术资讯。技术永无止境,勇攀高峰,一往直前!

随便说说文章不错?扫描关注

对这条消息进行解决。receive土办法在解决

“test”消息时,会调用

在执行

在代码

其它如preRestart等土办法的使用将在Akka容错主次进行讲解。

发送的这条消息那末被解决,那末任何的解决逻辑。在实际开发过程中,因为会对可不能能 被解决的消息增加有些应对逻辑,此时可不能能 重写unhandled土办法,代码如下:

中使用

解决消息时又向MyActor回送该消息,时候最终的输出另另俩个unknown message,分别对应123和”message from MyActor”

向自身发送了一根绳子 消息,receive土办法通过

Actor中的主要成员变量和土办法定义如下:

代码运行结果:

代码:

代码输出:

unhandled土办法用于解决那末被receive土办法解决的消息,下面的代码给出的是当不重写unhandled土办法时的代码

代码输出结果:

本节主要内容:

FirstActor作为MyActor的Supervisor,会先停止MyActor,再停止自身,时候先调用MyActor的postStop土办法,再调用FirstActor的postStop土办法。

中分别对postStop、preStart土办法进行了重写,在preStart土办法中通过代码

整体代码如下:

运行结果:

对成员变量child进行初始化,时候在postStop土办法中使用