【发布时间】:2017-05-03 15:53:44
【问题描述】:
我的项目使用play framework 2.3,需要每10分钟计算一次用户在市场上列出的物品的实时价格(物品的价格根据销售种类的数量而变化,例如股票)。我用演员来做到这一点。但是,我有一个问题
项目启动时如何启动作业,我也可以在代码中停止作业?
Akka.system.scheduler.schedule(0.microseconds, 10.minutes, tickActor, "job")
package job.scheduledJobs
import akka.actor.Actor
class JobModule extends Actor {
override def preStart() {
println("makeRealTimePrice Job start!!")
}
override def receive: Receive = {
case "job" =>
//calculate price
case _ => Unit
}
}
class TradingHandler(override implicit val env:
RuntimeEnvironment[SystemUser]) extends
securesocial.core.SecureSocial[SystemUser] with CookieLang {
def job() = Action {
implicit request =>
val tickActor = Akka.system.actorOf(Props(new JobModule))
val cancellable1 = Akka.system.scheduler.schedule(0.microseconds, 10.minutes, tickActor, "job")
Ok("success")
}
}
【问题讨论】:
标签: scala playframework