Bir Oyun var! Bazı görevleri ile uygulama periyodik olarak çalıştırmak gerekir. Görevleri Akka kullanarak programlayabilirim, ancak programlayıcının kendisinin nasıl başlayacağından emin değilim. Şu anda hemen yapıyorum buAkka oyuncuları oyuna dahil et
// app/jobs/Scheduler.scala
package jobs
import akka.util.duration._
import play.api.libs.concurrent.Akka
import play.api.Play.current
object Scheduler {
def start() {
Akka.system.scheduler.schedule(0 seconds, 1 minutes) {
SomeTask.start()
}
}
}
ve sonra
// app/Global.scala
import play.api._
import jobs.Scheduler
object Global extends GlobalSettings {
override def onStart(app: Application) {
Scheduler.start()
}
}
sorunu gibi, bir Zamanlayıcı nesnesi olan ve Global.scala
onu başlıyor bunda, görev bile geliştirme modunda çalışır ve olmasıdır testler sırasında, bu çok yakında sinir bozucu olur.
Sadece üretim modunda Akka ile iş planlamanın bir yolu var mı?
yöntem vardır isProd',' isDev' ve 'isTest' iletebiliriz. Çalışmakta olduğunuz modu bulmak için org/documentation/api/2.1-RC1/scala/index.html # play.api.Play $) nesnesi. – 4e6
Teşekkürler. Bahsettiğiniz yöntemler kapsamda bir 'implicit' uygulamasına sahip olmakla birlikte - ki bu, 'onStart' argümanı örtük olmadığından - ki bu sizin bağlantınızı izliyorsa, aslında app.mode'u kontrol edebiliyordum. aynısını yapar. Bunu bir cevaba koymak istiyorsanız, bunu kabul etmekten memnun olurum. – Andrea