Throttler between arbitrary IO producer and consumer functions

Version on this page:
LTS Haskell 13.25:
Stackage Nightly 2019-06-12:
Latest on Hackage:

See all snapshots throttle-io-stream appears in

BSD-3-Clause licensed by Moritz Schulte
Maintained by

Module documentation for

There are no documented modules for this package.

throttle-io-stream Hackage version Stackage version Build Status


This packages provides throttling functionality for arbitrary IO producers and consumers. The core function exported is the following:

throttle :: ThrottleConf a     -- ^ Throttling configuration
         -> IO (Maybe a)       -- ^ Input callback
         -> (Maybe a -> IO ()) -- ^ Output callback
         -> IO (Async ())      -- ^ Returns an async handler for this
                               -- throttling process

This will spawn asynchronous operations that

  1. consume data using the provided input callback and write it into an internal buffering queue and

  2. produce data from the buffering queue using the provided consumer callback.

Depends on 5 packages:
Used by 1 package:
comments powered byDisqus