May 26, 2018

Run IO operations asynchronously and wait for their results

This package provides a higher-level interface over threads, in which an Async a is a concurrent thread that will eventually deliver a value of type a. The package provides ways to create Async computations, wait for their results, and cancel them.

Using Async is safer than using threads in two ways

  • When waiting for a thread to return a result, if the thread dies with an exception then the caller must either re-throw the exception wait or handle it waitCatch; the exception cannot be ignored.

  • The API makes it possible to build a tree of threads that are automatically killed when their parent dies see withAsync.

WWW https//