akka 定时任务实例for play2.1

转载 2015年11月18日 14:12:53



    有时需要设定将来发生的事情,这时该怎么办?ActorSystem搞定一切!
    在那儿你能找到scheduler方法,它返回一个 akka.actor.Scheduler 实例, 这个实例在每个Actor系统里是唯一的,用来指定一段时间后发生的行为。
    请注意定时任务是使用ActorSystem的MessageDispatcher执行的.

    你可以计划向actor发送消息或执行任务的代码 (函数或Runnable).
    你会得到一个Cancellable类型的返回值,你可以调用cancel来取消定时任务的执行。

package controllers   
import play.api._
import play.api.mvc._  
import play.libs.Akka  
import akka.actor._
import scala.concurrent.duration._
import play.api.libs.concurrent.Execution.Implicits._
object Application extends Controller {   
def index = Action {    
// say hello     

Logger.info("hello, index action started")    

val Tick = "tick"      val Tack = "tack"    
val tickActor = Akka.system.actorOf(Props(new Actor {  
def receive = {          case Tick => Logger.info("that still ticks!")  
case Tack => Logger.warn("... 7 seconds after start, only once")       
}      }))      
// Repeat every 5 seconds, start 5 seconds after start  


Akka.system.scheduler.schedule(        5 seconds,        5 seconds,      
tickActor,        Tick      )        
// do only once, 7 seconds after start  
Akka.system.scheduler.scheduleOnce(7 seconds, tickActor, Tack)   
Ok(views.html.index("Your new application is ready."))  
}
}

akka入门-定时器

使用定时器可以实现将来发生的事情进行计划执行。以下代码演示了过一段时间向Actor发送消息。 1.编写Actor 在Actor中只是打印出接收到的消息 import akka.actor.U...

定时器 (Scala)

有时需要设定将来发生的事情,这时该怎么办? ActorSystem 搞定一切! 在那儿你能找到 scheduler 方法,它返回一个 akka.actor.Scheduler 实例, 这个实例在每个A...

scala定时任务调度器

一个用scala写的,在linux下执行的定时任务调度器 定时任务时常会有一个定时任务依赖另一个定时任务,这份代码就是用来解决这个问题的 package com.tcl.bigdata.yhb.tim...

scala 运行计时 App scala.time

object HelloWorld extends App{ import scala.util.Properties Properties.setProp("scala.time","true"...

gocron - 定时任务管理系统

from:http://blog.csdn.net/order_c/article/details/73176194 gocron - 定时任务管理系统 项目简介 使用Go语言开发的定时任务集中调度...

playframework 2.2 创建定时任务计划程序

通过AkkA及Ator 在play2下实现任务计划程序的开发。 操作流程: 创建全局配置类文件 /app/Global.scala 代码内容如下: /** * Created b...

【笔记】play2定时任务设置

之前用play开发应用时,涉及到定时任务,都是在数据库里实现的。 后来偶然发现,其实在play里面也是可以设置定时任务的,主要使用Akka。 Akka 是一个用 Scala 编写的库,用于简化编写容错...
  • chj362
  • chj362
  • 2016年05月04日 14:23
  • 173

play framework 添加启动任务、定时任务

前人总结了很多东西,真的受益良多,有一个详细的博客在这里,看完立马就明白,我这里只是做一个记录,方便日后查找 http://desert3.iteye.com/blog/1586708 Play ...

Akka笔记之配置及调度

正如前几篇文章中所看到的,我们可以通过ActorSystem的actorOf方法来创建一个Actor。其实ActorSystem还可以做许多事情。本篇中我们来看下如何用它来进行配置及调度。 我们...

cocos2dx三种定时器的使用以及停止schedule,scheduleUpdate,scheduleOnce

今天白白跟大家分享一下cocos2dx中定时器的使用方法。
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:akka 定时任务实例for play2.1
举报原因:
原因补充:

(最多只允许输入30个字)