为什么awakeEvery 从scalaz-stream 中删除 [英] Why awakeEvery was removed from scalaz-stream

查看:42
本文介绍了为什么awakeEvery 从scalaz-stream 中删除的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我发现现代 scalaz-stream 中的 scalaz.stream.Process 中没有更多的 awakeEvery.那么如何运行带有句点的东西?

I found that there is no more awakeEvery inside scalaz.stream.Process in modern scalaz-stream. How to run something with period then?

推荐答案

已移至 scalaz.stream.time 包:

import scalaz.stream._

scala> implicit val sc = new java.util.concurrent.ScheduledThreadPoolExecutor(1) 
sc: java.util.concurrent.ScheduledThreadPoolExecutor = java.util.concurrent.ScheduledThreadPoolExecutor@6b9013a5[Running, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0]

scala> import time._
import time._

scala> awakeEvery(1 second)
res22: scalaz.stream.Process[scalaz.concurrent.Task,scala.concurrent.duration.Duration] = Await(scalaz.concurrent.Task@798e0ec5,<function1>)

用法:

import scalaz.stream.io._

scala> awakeEvery(1 second).map(_.toString).take(10).to(stdOutLines).run.run
1071184213 nanoseconds
2070400738 nanoseconds
3069559214 nanoseconds
4066587711 nanoseconds
5071218561 nanoseconds
6071221562 nanoseconds
7071216340 nanoseconds
8067705406 nanoseconds
9066798501 nanoseconds
10066190672 nanoseconds

这篇关于为什么awakeEvery 从scalaz-stream 中删除的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆