package riot

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module SchedulerSource

Sourcemodule Tracer : sig ... end
Sourcetype t = {
  1. uid : Uid.t;
  2. rnd : Random.State.t;
  3. run_queue : Core.Proc_queue.t;
  4. sleep_set : Core.Proc_set.t;
  5. timers : Time.Timer_wheel.t;
  6. io_tbl : Net.Io.t;
}
Sourcetype pool = {
  1. mutable stop : bool;
  2. schedulers : t list;
  3. processes : Core.Proc_table.t;
  4. registry : Core.Proc_registry.t;
}
Sourceval make : rnd:Random.State.t -> unit -> t
Sourceval get_current_scheduler : unit -> t
Sourceval set_current_scheduler : t -> unit
Sourceval get_current_process_pid : unit -> Core.Pid.t
Sourceval set_current_process_pid : Core.Pid.t -> unit
Sourceval get_random_scheduler : pool -> t
Sourceval set_timer : t -> float -> [ `interval | `one_off ] -> (unit -> unit) -> unit Core.Ref.t
Sourceval add_to_run_queue : t -> Core.Process.t -> unit
Sourceval awake_process : pool -> Core.Process.t -> unit
Sourceval run : pool -> t -> unit -> unit
Sourcemodule Pool : sig ... end
OCaml

Innovation. Community. Security.