akka 笔记
调度篇
scheduleAtFixedRate 和 scheduleWithFixedDelay

在 Scala 中,你可以使用 Akka 的定时任务库来实现定时打印 1 到 100 的功能。下面是一个简单的示例代码:
import akka.actor.ActorSystem
import scala.concurrent.duration._
object ScheduledTaskExample {
def main(args: Array[String]): Unit = {
val system = ActorSystem("ScheduledTaskSystem")
implicit val ec = system.dispatcher
val task = system.scheduler.schedule(0 seconds, 1 second) {
for (i <- 1 to 100) {
println(i)
}
}
// 等待一段时间后取消定时任务
system.scheduler.scheduleOnce(10 seconds) {
task.cancel()
system.terminate()
}
}
}
在这个示例中,我们创建了一个 ActorSystem,并使用 scheduler.schedule 方法来实现每隔一秒打印 1 到 100 的功能。然后使用 scheduler.scheduleOnce 方法来在 10 秒后取消定时任务并终止 ActorSystem。你可以根据实际需求进行相应的调整和扩展。



浙公网安备 33010602011771号