timer-wheel: A timer wheel
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.
This library provides a timer wheel data structure for
O(1) registering
IO
actions to fire after a given amount of timeO(1) canceling registered actions
It is similar to TimerManager
from GHC.Event, but can scale much better
under concurrent access patterns.
An unreleased version of this library has a backpack
-based signature for
selecting from a variety of different data structures used internally.
However, until backpack
has broader support on Hackage, and in Haddocks,
etc, I decided to just hard-code something decent (a priority search queue).
This makes the O(1)
claims above a bit of a lie, as these rely on using a
linked list data structure internally.
[Skip to Readme]
Properties
Versions | 0.1.0, 0.2.0, 0.2.0.1, 0.2.1, 0.3.0, 0.4.0, 0.4.0.1, 1.0.0, 1.0.0.1 |
---|---|
Change log | CHANGELOG.md |
Dependencies | atomic-primops (>=0.8 && <0.9), base (>=4.9 && <4.15), psqueues (>=0.2.7 && <0.3), vector (>=0.10 && <0.13) [details] |
License | BSD-3-Clause |
Copyright | (c) 2018-2020, Mitchell Rosen |
Author | Mitchell Rosen |
Maintainer | Mitchell Rosen <mitchellwrosen@gmail.com> |
Category | Data |
Home page | https://github.com/mitchellwrosen/timer-wheel |
Bug tracker | https://github.com/mitchellwrosen/timer-wheel/issues |
Source repo | head: git clone git://github.com/mitchellwrosen/timer-wheel.git |
Uploaded | by mitchellwrosen at 2020-06-18T02:09:06Z |
Modules
[Index] [Quick Jump]
- Data
Downloads
- timer-wheel-0.2.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
Package maintainers
For package maintainers and hackage trustees