首先定义一个类,继承Actor
class akka001 extends Actor{
override def preStart() ={
println("this is preStart()")
}
def receive = LoggingReceive{
case "hello" => println("hello world")
}
override def postStop()={
println("this is postStop()")
}
}
然后定义一个主类,给这个类的对象发送消息
/**
* Created by hyj on 17-7-3.
*/
object AkkaMain {
def main(args: Array[String]): Unit = {
val actorSystem=ActorSystem("actorSystem")
val lifecycleActor=actorSystem.actorOf(Props[cn.qzt360.akka.akka001],"testactor")
lifecycleActor!"hello"
actorSystem.shutdown()
}
}
输出结果如下:
this is preStart()
hello world
this is postStop()
Akka的生命周期:会首先执行prestart方法,然后执行receive方法,用来处理消息,最后调用actorSystem.shutdown()的时候会触发postStop方法的执行
分享到:
相关推荐
5. **生命周期管理**:Actor有自己的生命周期,包括创建、正常工作、停止等阶段。可以通过`become`和`unbecome`方法动态改变Actor的行为。 6. **故障恢复**:Akka提供了强大的故障恢复机制,如监督策略,允许Actor...
第 4 章 Actor 的生命周期—处理状态与错误:Actor 生命周期、监督机制、Stash/ Unstash、Become/Unbecome 以及有限自动机。 第 5 章 纵向扩展:并发编程、Router Group/Pool、Dispatcher、阻塞 I/O 的处理以 及 API...
第 4 章 Actor 的生命周期—处理状态与错误:Actor 生命周期、监督机制、Stash/ Unstash、Become/Unbecome 以及有限自动机。 第 5 章 纵向扩展:并发编程、Router Group/Pool、Dispatcher、阻塞 I/O 的处理以 及 API...
- Actor系统是一个包含了Actor的容器,负责创建、监督Actor的生命周期并提供网络通信的能力。 - Actor引用、路径和地址是标识和定位Actor的机制。每个Actor都有一个唯一的路径,通过这个路径可以在Actor系统中找到...
- **启动与停止**:Actor 可以被启动或停止,控制其生命周期。 - **监督策略**:当 Actor 出现故障时,可以通过配置监督策略决定是否重启或终止该 Actor。 #### 六、状态与错误处理 - **状态管理**:Actor 可以维护...
Actor 系统是 Akka 的核心组件之一,负责管理 Actor 的生命周期。本节详细解释了如何创建 Actor 系统、如何在其内部创建 Actor 实例以及如何配置 Actor 系统的属性。 ##### 2.3 什么是 Actor? Actor 是 Akka 中最...
- **Actor系统(Actor System)**:Actor系统的概念类似于进程或线程的概念,但它是Akka中的核心组件,用于管理Actor的生命周期。 - **Actor References, Paths and Addresses**:Actor之间的通信是通过发送消息完成...
- **Actor 系统:** 管理 Actor 的容器,负责 Actor 的生命周期管理。 - **消息传递:** Actor 之间通信的主要方式,通过发送消息来进行交互。 - **监督策略:** 定义了当 Actor 出现异常时应该如何处理的一组规则。...
Actor系统则是Actor的运行环境,它负责管理Actor的生命周期,包括创建、调度和销毁Actor。Actor系统还提供了高级特性,比如监督策略、容错机制等,这些机制可以帮助开发者构建更加健壮的应用程序。 #### 1.3 Akka...
- **Actor定义**:通过阅读源码,我们可以理解如何定义一个Actor,包括其接收的消息类型、行为函数和生命周期方法。 - **路由与调度**:Akka的路由机制如何将消息分发到多个Actor,以及调度器如何决定哪个Actor...
每个actor都有自己的生命周期,可以独立失败而不影响整个系统。如果一个actor崩溃,它的状态可以被恢复,或者可以创建一个新的actor来代替。此外,Akka还提供了监督策略,允许父actor监督其子actor,一旦子actor出现...
- **Actor System**:管理 Actor 的生命周期和资源。 - **Supervisor**:负责监控 Actor 并处理故障。 - **Dispatcher**:控制 Actor 的执行线程池。 - **Mailbox**:用于存储 Actor 接收的消息队列。 ##### 2.2 ...
在Akka中,每个Actor都是独立的,有自己的生命周期和状态,这使得系统更易于理解和调试。 3. **持久化**:Akka提供了内置的持久化能力,允许Actor的状态在重启或故障后恢复,从而实现容错。 4. **集群**:Akka集群...
`ActorSystem`作为整个系统的入口,负责资源管理和生命周期管理;而`Props`则包含了创建actor所需的信息,如其具体实现类、依赖关系等。 消息传递是Akka的核心,理解如何设计和使用消息是提高系统性能的关键。Akka...
Actor的生命周期管理是通过父Actor和监督策略来实现的,这种层次结构使得故障处理更加有序。 Akka的Actor模型还支持分布式部署,这意味着Actor可以跨多个节点运行,进一步增强了系统的可扩展性。通过Akka的Remoting...
1. **Actor系统**:Akka的核心是Actor系统,它负责管理Actor生命周期、调度和通信。Actor系统提供了一个全局的上下文,所有Actor都在这个系统内运行。 2. **Actor**:Actor是Akka中的基本工作单元,每个Actor都有...
AKKA 提供了多种方式来控制 Actor 的生命周期,例如使用 `context.stop` 方法来终止 Actor 或使用 `PoisonPill` 来通知 Actor 自行终止。 ```scala class LifecycleActor extends Actor { def receive = { case ...
在Akka中,Actor系统构成了actor的层次结构,并管理它们的生命周期。文档会解释什么是actor,以及actor引用、路径和地址的概念。由于Akka是基于Java平台构建的,因此文档还将讨论Akka如何处理Java内存模型和消息传递...
2. **Actor生命周期**: Actors有自己的生命周期,包括创建、接收消息、停止等阶段。可以通过定义Actor的行为来处理不同的消息,并控制其生命周期。 3. **Actor路径**: 每个Actor都有一个唯一的路径,允许其他Actor...
Actor Systems 是 Akka 中的基本构建单元,它们负责管理 Actor 的生命周期以及它们之间的通信。每个 Actor System 都有自己的配置信息,用于控制 Actor 的行为。 **2.2 什么是 Actor?** Actor 是 Akka 中的核心...