package tezos-stdlib

  1. Overview
  2. Docs
Tezos: yet-another local-extension of the OCaml standard library

Install

Dune Dependency

Authors

Maintainers

Sources

tezos-v10.2.tar.bz2
sha256=6b33e0549574c89a63538c94ce5555dd141e3c0fb5d934abff07d702fa3244d2
sha512=681a197baabec6e2f806871d43490382243207518f8fcf932741cd314d8717e46db2b6a5adc222f8726083a5dd911083b4931b7e878ab815f8f1a32763d1bf93

doc/tezos-stdlib/Tezos_stdlib/Lwt_idle_waiter/index.html

Module Tezos_stdlib.Lwt_idle_waiter

type t

A lightweight scheduler to run tasks concurrently as well as special callbacks that must be run in mutual exclusion with the tasks (and each other).

val create : unit -> t

Creates a new task / idle callback scheduler

val task : t -> (unit -> 'a Lwt.t) -> 'a Lwt.t

Schedule a task to be run as soon as no idle callback is running, or as soon as the next idle callback has been run if it was scheduled by force_idle.

val when_idle : t -> (unit -> 'a Lwt.t) -> 'a Lwt.t

Runs a callback as soon as no task is running. Does not prevent new tasks from being scheduled, the calling code should ensure that some idle time will eventually come. Calling this function from inside the callback will result in a dead lock.

val force_idle : t -> (unit -> 'a Lwt.t) -> 'a Lwt.t

Runs a callback as soon as possible. Lets all current tasks finish, but postpones all new tasks until the end of the callback. Calling this function from inside the callback will result in a dead lock.

OCaml

Innovation. Community. Security.