sig
  val name : string
  type exn_ctx =
      [ `Backend
      | `Exn_trap
      | `Fd_action
      | `Finalizer
      | `Future
      | `Queue of string
      | `Runtime_action
      | `Signal_action
      | `Timer_action ]
  type exn_info = Fut.Runtime.exn_ctx * exn * Printexc.raw_backtrace
  val set_exn_trap : (Fut.Runtime.exn_info -> unit) -> unit
  val pp_exn_info : Format.formatter -> Fut.Runtime.exn_info -> unit
  type abort = unit -> unit
  val action : (unit -> unit) -> unit
  val signal_action : int -> (Fut.Runtime.abort -> (int -> unit) * 'a) -> 'a
  val timer_action :
    float -> (Fut.Runtime.abort -> (float -> unit) * 'a) -> 'a
  val fd_action : [ `R | `W ] -> Unix.file_descr -> (bool -> unit) -> unit
  val fd_close : Unix.file_descr -> unit
  val worker_count : unit -> int
  val set_worker_count : int -> unit
end