package riot

  1. Overview
  2. Docs
An actor-model multi-core scheduler for OCaml 5

Install

Dune Dependency

Authors

Maintainers

Sources

riot-0.0.5.tbz
sha256=01b7b82ccc656b12b7315960d9df17eb4682b8f1af68e9fee33171fee1f9cf88
sha512=d8831d8a75fe43a7e8d16d2c0bb7d27f6d975133e17c5dd89ef7e575039c59d27c1ab74fbadcca81ddfbc0c74d1e46c35baba35ef825b36ac6c4e49d7a41d0c2

doc/riot.scheduler/Scheduler/index.html

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.