The kazura-queue package
kazura-queue provides an implementation of FIFO queue. It is faster than Chan, TQueue or TChan by the benefit of fetch-and-add instruction.
Main motivation of this package is to solve some difficulty of unagi-chan package.
In unagi-chan, the item in the queue/chan can be lost when async exception is throwed to the read thread while waiting for read. (Although it has handler to recover lost item, it is difficult to keep FIFO in such case)
In unagi-chan, garbage items of the queue cannot be collected immediately. Since the buffer in the queue has the reference to the items until the buffer is garbage-collected.
kazura-queue is slightly slower than unagi-chan instead of solving these issues. And kazura-queue lost broadcast function to improve the second issue. It means that kazura-queue is not Chan but is just Queue.
|Versions||0.1.0.0, 0.1.0.1, 0.1.0.2|
|Dependencies||async (>=2.0), atomic-primops (>=0.8), base (>=4.7 && <5), containers (>=0.5), primitive (>=0.5.3) [details]|
|Source repository||head: git clone https://github.com/asakamirai/kazura-queue -b master|
|Uploaded||Sat Jan 30 08:05:51 UTC 2016 by asakamirai|
|Downloads||143 total (11 in the last 30 days)|
|Status||Docs available [build log]
Last success reported on 2016-02-12 [all 1 reports]
For package maintainers and hackage trustees