我學習了Scala的Play 2.0框架,除了能夠處理請求之外,我還想在後臺運行一個連續的任務,就像一羣定時器一樣。並以某種方式能夠從請求 - 響應操作中訪問這些定時器,而不會遇到任何線程同步問題。我聽說過Play中的Jobs,並且Scala中有演員。然而,我在2.0中找不到有關喬布斯的任何信息,它們似乎已被Promises取代..但實際上,這並不像運行一個持久的後臺線程,我不確定Actors如何適應整個範例。玩2.0框架 - 主應用程序週期的持續線程?
基本上,我的問題是 - 在Play 2.0中獲得這種持久性的傳統方式是什麼?
好的,我已經閱讀了關於演員和時間安排的Play教程。演員的概念對我來說看起來簡單而合乎邏輯,在Erlang我也對他們有一些小的經驗,所以除了一件事情之外,一切似乎都很清楚。組織線程更新週期的首選方式是什麼?我是否必須使用調度程序簡單地向代表線程的Actor安排定期更新衝動?或者我從一個Actor開始一個線程,並在它的'run()'方法中組織循環? – noncom 2012-04-01 16:26:16
如果您想安排工作來運行例如,不需要額外的線程。每30分鐘一次,只需調用'Akka.system.scheduler.schedule(0秒,30分鐘,testActor,「tick」)'就可以了。如果您需要基於事件的更新作業(例如,在用戶上傳後調整圖像的大小以備後用),請在完成作業時向演員發送消息:'myActor! myMessage'。 – Carsten 2012-04-01 16:38:58
太好了,謝謝!這涵蓋了一切! – noncom 2012-04-01 16:42:14