我在学习 monix 3 . 下一个代码:
monix 3
object Main extends TaskApp { override def runc = { Observable.fromIterable(1 to 10) .map{i => val delay = Random.nextInt(1000) + 1000 println(s"Starting $i, delay = $delay") Thread.sleep(delay) // Imitation of hard execution i } .map{i => val delay = Random.nextInt(1000) + 1000 println(s"Continue $i, delay = $delay") Thread.sleep(delay) i } .consumeWith(Consumer.loadBalance(3, Consumer.foreach(i => println(s"End $i")))) //Compile error here } }
导致编译错误:
缺少参数类型
我搞不懂,这里出了什么问题,怎么编译这段代码?
升级版 第二个问题是如何在 n 几分钟?
n
作为对第一个问题的回答,必须显式地为 foreach :
foreach
Consumer.foreach[Int](i => println(s"End $i"))
要回答第二个问题,请使用 Observable.intervalAtFixedRate 或 Observable.intervalAtFixedDelay
Observable.intervalAtFixedRate
Observable.intervalAtFixedDelay
请参考 Monix Scaladoc .