Package2.2.6Concurrency
async
Run IO operations asynchronously and wait for their results
- Version2.2.6
- CategoryConcurrency
- LicenceBSD-3-Clause
- AuthorSimon Marlow
- MaintainerSimon Marlow <marlowsd@gmail.com>
- Homepagegithub.com/simonmar/async
- Pinned byhackage async 2.2.6
- Sourcehackage.haskell.org/package/async-2.2.6
Modules
4 modules- Control.Concurrent.Async58This module provides a set of operations for running IO operations
- Control.Concurrent.Async.Warden8A more flexible way to create Asyncs and have them automatically
- Control.Concurrent.Stream7Processing streams with a fixed number of worker threads
Internal modules · 1
- Control.Concurrent.Async.Internal67This module is an internal module. The public API is provided in
Description
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).
Depends on
4 packages- base-4.23.0.0with GHC
- hashable-1.5.1.0in this set
- stm-2.5.3.1with GHC
- unordered-containers-0.2.21in this set