1 def read(callback: (Throwable \/ Array[Byte]) => Unit): Unit = ???
2 //> read: (callback: scalaz.\/[Throwable,Array[Byte]] => Unit)Unit
3 val t: Task[Array[Byte]] = Task.async(read) //> t : scalaz.concurrent.Task[Array[Byte]] = scalaz.concurrent.Task@1a677343
4 val t2: Task[Array[Byte]] = for { 5 bytes <- t 6 moarBytes <- t 7 } yield (bytes ++ moarBytes) //> t2 : scalaz.concurrent.Task[Array[Byte]] = scalaz.concurrent.Task@15de0b3c
8 val prct2 = Process.eva l(t2) //> prct2 : scalaz.stream.Process[scalaz.concurrent.Task,Array[Byte]] = Await(scalaz.concurrent.Task@15de0b3c,<function1>,<function1>)
9
10 def asyncRead(succ: Array[Byte] => Unit, fail: Throwable => Unit): Unit = ???
11 //> asyncRead: (succ: Array[Byte] => Unit, fail: Throwable => Unit)Unit
12 val t3: Task[Array[Byte]] = Task.async { callback =>
13 asyncRead(b => callback(b.right), err => callback(err.left)) 14 } //> t3 : scalaz.concurrent.Task[Array[Byte]] = scalaz.concurrent.Task@489115ef
15 val t4: Task[Array[Byte]] = t3.flatMap(b => Task(b)) 16 //> t4 : scalaz.concurrent.Task[Array[Byte]] = scalaz.concurrent.Task@3857f613
17 val prct4 = Process.eva l(t4) //> prct4 : scalaz.stream.Process[scalaz.concurrent.Task,Array[Byte]] = Await(scalaz.concurrent.Task@3857f613,<function1>,<function1>)
1 import scala.concurrent.duration._ 2 implicit val scheduler = java.util.concurrent.Executors.newScheduledThreadPool(3) 3 //> scheduler : java.util.concurrent.ScheduledExecutorService = java.util.concurrent.ScheduledThreadPoolExecutor@516be40f[Running, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0]
4 val fizz = time.awakeEvery(3.seconds).map(_ => "fizz") 5 //> fizz : scalaz.stream.Process[scalaz.concurrent.Task,String] = Await(scalaz.concurrent.Task@5762806e,<function1>,<function1>)
6 val fizz3 = fizz.take(3) //> fizz3 : scalaz.stream.Process[scalaz.concurrent.Task,String] = Append(Halt(End),Vector(<function1>))
7 fizz3.runLog.run //> res9: Vector[String] = Vector(fizz, fizz, fizz)
1 type BigStringResult = String 2 val qJobResult = async.unboundedQueu