Scala循环一段时间
发布时间:2020-12-16 18:45:49 所属栏目:安全 来源:网络整理
导读:我正在寻找循环一段时间的可能性. 例如,我想println(“你好
我正在寻找循环一段时间的可能性.
例如,我想println(“你好!”)5分钟. 我正在使用Scala和Akka. 我正在考虑使用未来,它将在5分钟内完成,同时我将使用while循环,并检查它是否未完成.这种方法对我不起作用,因为我的班级不是演员,我不能从循环外完成未来. 任何想法,或者可能有这样的事情的现成解决方案? 目前难看的解决方案: def now = Calendar.getInstance.getTime.getTime val ms = durationInMins * 60 * 1000 val finish = now + ms while (now <= finish) { println("hi") } 提前致谢! 解决方法
@Radian的解决方案具有潜在的危险性,因为当您的应用程序同时运行此代码几次时,它最终将阻止ExecutorService中的所有线程.你可以更好地使用截止日期:
import scala.concurrent.duration._ val deadline = 5.seconds.fromNow while(deadline.hasTimeLeft) { // ... } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |