我想每秒运行一次这个 Scala 函数:
object AuthTasker {
def cleanTokens() {
[...]
}
}
Akka 的 Scheduler 有以下功能:schedule(initialDelay: FiniteDuration, interval: FiniteDuration)(f: ⇒ Unit)
我可以使用该功能来每秒调用AuthTasker.cleanToken()
一次吗?
回答您的问题:是的,您可以使用 schedule 方法每秒调用一次 AuthTasker.cleanToken() 。我推荐以下内容(包括为您导入的内容):
import scala.concurrent.duration._
import scala.concurrent.ExecutionContext
import ExecutionContext.Implicits.global
val system = akka.actor.ActorSystem("system")
system.scheduler.schedule(0 seconds, 1 seconds)(AuthTasker.cleanTokens)
注意:此更新后的代码每隔一秒而不是每 0 秒调用一次调度方法。回顾代码时,我发现了错误。