The atomic-primops package
After GHC 7.4 a new casMutVar# primop became available, but it's difficult to use safely, because pointer equality is a highly unstable property in Haskell. This library provides a safer method based on the concept of Tickets.
Also, this library uses the foreign primop capability of GHC to add access to other variants that may be of interest, specifically, compare and swap inside an array.
Changes in 0.3:
Major internal change. Duplicate the barrier code from the GHC RTS and thus enable support for executables that are NOT built with -threaded.
Changes in 0.4:
Further internal changes, duplicate cas routine well as barriers.
Add an Unboxed counter variant that uses movable ByteArrays on the GHC heap.
- No changelog available
|Versions||0.1.0.0, 0.1.0.2, 0.2.2, 0.2.2.1, 0.3, 0.4, 0.5, 0.5.0.2, 0.6, 0.6.0.5, 0.6.0.6, 0.6.1 (info)|
|Dependencies||base (>=18.104.22.168 && <4.7), bits-atomic, Cabal, ghc-prim, primitive|
|Source repository||head: git clone git://github.com/rrnewton/haskell-lockfree-queue.git|
|Uploaded||Fri Jul 19 15:47:35 UTC 2013 by RyanNewton|
|Downloads||3958 total (170 in last 30 days)|
|Status||Docs uploaded by user [build log]|
All reported builds failed [all 1 reports]
|debug||Enable extra internal checks.||Disabled|
Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info
- atomic-primops-0.4.tar.gz [browse] (Cabal source package)
- Package description (included in the package)
For package maintainers and hackage trustees