stm-io-hooks: STM with IO hooks
This library provides a Software Transactional Memory (STM) monad with commit and retry IO hooks. A retry-action is run (at least once) if the transaction retries, while commit-actions are executed iff the transaction commits. The AdvSTM monad also gives some atomicity guarantees for commit-actions:
When a TVar is modified in a transaction and this transaction commits, the update remains invisible to other threads until the corresponding onCommit action is run.
If the onCommit action throws an exception, the original values of the modified TVars are restored.
Note: The package can be used as a drop-in replacement for
Control.Concurrent.STM
.
Feedback is welcome!
Modules
[Index]
Downloads
- stm-io-hooks-1.0.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
Versions [RSS] | 0.0.1, 0.1.0, 0.2.0, 0.2.1, 0.3.0, 0.4.2, 0.5.4, 0.6.0, 0.7.0, 0.7.1, 0.7.2, 0.7.3, 0.7.5, 1.0.0, 1.0.1, 1.1.0, 1.1.1, 1.1.2 |
---|---|
Dependencies | array (>=0.2.0.0 && <0.5), base (>=4 && <5), containers (>=0.2.0.0 && <0.6), mtl (>=1.1.0.2 && <2.2), stm (>=2.1.1.2 && <2.5) [details] |
License | BSD-3-Clause |
Author | Peter Robinson 2009-2014, Chris Kuklewicz 2006 |
Maintainer | Peter Robinson <thaldyron@gmail.com> |
Category | Concurrency |
Source repo | head: git clone https://github.com/thaldyron/stm-io-hooks |
Uploaded | by PeterRobinson at 2014-06-16T12:31:32Z |
Distributions | NixOS:1.1.2 |
Reverse Dependencies | 3 direct, 0 indirect [details] |
Downloads | 13520 total (3 in the last 30 days) |
Rating | 2.0 (votes: 1) [estimated by Bayesian average] |
Your Rating | |
Status | Docs available [build log] Successful builds reported [all 1 reports] |