package moonpool

  1. Overview
  2. Docs


A pool within a bigger pool (ie the ocean). Here, we're talking about pools of Thread.t which live within a fixed pool of Domain.t.

module Pool : sig ... end

Thread pool.

module Runner : sig ... end

Abstract runner.

val start_thread_on_some_domain : ('a -> unit) -> 'a -> Thread.t

Similar to Thread.create, but it picks a background domain at random to run the thread. This ensures that we don't always pick the same domain to run all the various threads needed in an application (timers, event loops, etc.)

module Lock : sig ... end

Mutex-protected resource.

module Fut : sig ... end


module Chan : sig ... end


module Fork_join : sig ... end

Fork-join primitives.

module Blocking_queue : sig ... end

A simple blocking queue.

module Atomic : sig ... end

Atomic values.


module Suspend_ : sig ... end



Innovation. Community. Security.