supervisors: Monitor groups of threads with non-hierarchical lifetimes.
This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.
The supervisors
package provides a useful abstraction for managing the
groups of Haskell threads, which may not have a strictly hierarchical
structure to their lifetimes.
Concretely, the library provides a Supervisor
construct, which can be
used to safely spawn threads while guaranteeing that:
When the supervisor is killed, all of the threads it supervises will be killed.
Child threads can terminate in any order, and memory usage will always be proportional to the number of *live* supervised threads.
One way to think of it is that supervisors
is to async
as
resourcet
is to bracket
.
Note that this package is EXPERIMENTAL; it needs more careful testing before I can earnestly recommend relying on it.
See the README and module documentation for more information.
[Skip to Readme]
Properties
Versions | 0.1.0.0, 0.1.0.0, 0.2.0.0, 0.2.1.0 |
---|---|
Change log | CHANGELOG.md |
Dependencies | async (>=2.2.1 && <2.3), base (>=4.12 && <4.13), containers (>=0.6 && <0.7), stm (>=2.5 && <2.6), unliftio (>=0.2.8 && <0.3) [details] |
License | MIT |
Copyright | 2018 Ian Denhardt |
Author | Ian Denhardt |
Maintainer | ian@zenhack.net |
Category | Concurrency |
Home page | https://github.com/zenhack/haskell-supervisors |
Bug tracker | https://github.com/zenhack/haskell-supervisors/issues |
Source repo | head: git clone https://github.com/zenhack/haskell-supervisors.git -b master |
Uploaded | by isd at 2018-11-10T23:35:53Z |
Modules
[Index] [Quick Jump]
Downloads
- supervisors-0.1.0.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
Package maintainers
For package maintainers and hackage trustees