ScalaDays 2017 — Monix Task: Lazy, Async & Awesome
Future from the standard library is great, but sometimes we
need more. A
Future strives to be a value, one detached from time
and for this reason its capabilities are restricted and for some
use-cases its behavior ends up being unintuitive. Therefore, while the
Future/Promise pattern is great for representing asynchronous results
of processes that may or may not be started yet, it cannot be used as
a specification for an asynchronous computation.
Task is in essence about dealing with asynchronous
computations and non-determinism, being inspired by the Scalaz Task
and designed from the ground up for performance and to be compatible
makes use of Scala’s Future to represent results, the two being
In this talk I’ll show you its design, when you should use it and why in dealing with asynchrony it’s better to work with Task instead of blocking threads.