Lwt_throttle.Make
module H : Stdlib.Hashtbl.HashedType
type key = H.t
val create : rate:int -> max:int -> n:int -> t
Creates a rate limiter.
Lwt_throttle.wait limiter channel
returns a new promise associated with the given rate limiter and channel.
If the maximum number of pending promises for limiter
has not been reached, the promise starts pending. It will be resolved with true
at some future time, such that the rate limit of limiter
is not exceeded, with respect to other promises in the same channel
.
If the maximum number of pending promises has been reached, the returned promise is already resolved with false
.