Module Backend.Tasks

type ('a, 'b) doer = 'a -> 'b option
val run_sequentially : finish:('b option -> 'a -> 'a option) -> f:('a, 'b) doer -> 'a list -> unit

Run the tasks sequentially

module Runner : sig ... end

A runner accepts new tasks repeatedly for parallel execution