package miou

  1. Overview
  2. Docs
Composable concurrency primitives for OCaml

Install

dune-project
 Dependency

Authors

Maintainers

Sources

miou-0.10.1.tbz
sha256=56ea30ffd0924d941c8afdb96749252cc4af61465d392178c70475a7859284d5
sha512=42edbb87b4f9c3a0e67e85aebf037e8b6835eae7c8731a7e5caeb6d17be488137bc3bd5c4a375cd03f8eeac2f9d71e24ff0706b9877cc1dc6132666db1fa31d2

doc/miou.backoff/Miou_backoff/index.html

Module Miou_backoffSource

Randomized exponential backoff mechanism.

Sourcetype t

Type of backoff values.

Sourceval max_wait_log : int

Logarithm of the maximum allowed value for wait.

Sourceval create : ?lower_wait_log:int -> ?upper_wait_log:int -> unit -> t

create creates a backoff value. upper_wait_log, lower_wait_log override the logarithmic upper and lower bound on the number of spins executed by once.

Sourceval default : t

default is equivalent to create ().

Sourceval once : t -> t

once b executes one random wait and returns a new backoff with logarithm of the current maximum value incremented unless it is already at upper_wait_log of b.

Note that this uses the default Stdlib Random per-domain generator.

Sourceval reset : t -> t

reset b returns a backoff equivalent to b except with current value set to the lower_wait_log of b.

Sourceval get_wait_log : t -> int

get_wait_log b returns logarithm of the maximum value of wait for next once.