sig
  val detach : ('-> 'b) -> '-> 'Lwt.t
  val run_in_main : (unit -> 'Lwt.t) -> 'a
  val init : int -> int -> (string -> unit) -> unit
  val simple_init : unit -> unit
  val get_bounds : unit -> int * int
  val set_bounds : int * int -> unit
  val set_max_number_of_threads_queued : int -> unit
  val get_max_number_of_threads_queued : unit -> int
  val nbthreads : unit -> int
  val nbthreadsbusy : unit -> int
  val nbthreadsqueued : unit -> int
end