Akka 调度程序未完成
Akka scheduler not completing
我需要在特定时间间隔向演员发送消息。我正在使用以下代码:
object SendToActor extends App {
import Sender._
val system: ActorSystem = ActorSystem("sender")
try {
val senderActor: ActorRef = system.actorOf(Sender.props, "sendActor")
val sendSchedule =
system.scheduler.schedule(0 milliseconds, 5 minutes, senderActor, doSomething())
} finally {
system.terminate()
}
}
不幸的是,调度程序似乎 运行 除非我执行以下操作之一:
在它后面放一个readLine()
:
val sendSchedule = system.scheduler.schedule(0 毫秒,5 分钟,senderActor,doSomething())
读线()
在它后面放一个Thread.sleep()
:
val sendSchedule = system.scheduler.schedule(0 毫秒,5 分钟,senderActor,doSomething())
Thread.sleep(10000)
调度程序不会像上面编码的那样 运行 是有原因的吗?为什么需要睡眠才能工作?
可能是因为您在定义调度程序后立即终止了 actor 系统。
我需要在特定时间间隔向演员发送消息。我正在使用以下代码:
object SendToActor extends App {
import Sender._
val system: ActorSystem = ActorSystem("sender")
try {
val senderActor: ActorRef = system.actorOf(Sender.props, "sendActor")
val sendSchedule =
system.scheduler.schedule(0 milliseconds, 5 minutes, senderActor, doSomething())
} finally {
system.terminate()
}
}
不幸的是,调度程序似乎 运行 除非我执行以下操作之一:
在它后面放一个
readLine()
:val sendSchedule = system.scheduler.schedule(0 毫秒,5 分钟,senderActor,doSomething()) 读线()
在它后面放一个
Thread.sleep()
:val sendSchedule = system.scheduler.schedule(0 毫秒,5 分钟,senderActor,doSomething()) Thread.sleep(10000)
调度程序不会像上面编码的那样 运行 是有原因的吗?为什么需要睡眠才能工作?
可能是因为您在定义调度程序后立即终止了 actor 系统。