package async_kernel

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

Module Deferred.SchedulerSource

Sourceval events : Async_kernel__.Types.Scheduler.t -> Async_kernel__Types.Job_or_event.t Timing_wheel.t
Sourceval set_execution_context : Async_kernel__.Types.Scheduler.t -> Async_kernel__Types.Execution_context.t -> unit
Sourcemodule Synchronous_time_source : sig ... end
Sourcemodule Event : sig ... end
Sourcemodule Job_or_event : sig ... end
Sourceval debug : bool
Sourcemodule Ivar : sig ... end
Sourcemodule Bvar : sig ... end
Sourcemodule Very_low_priority_worker : sig ... end
Sourcetype t = {
  1. mutable check_access : (unit -> unit) option;
  2. mutable job_pool : (Execution_context.t, Obj.t -> unit, Obj.t) Tuple_pool.Slots.t3 Tuple_pool.t;
  3. normal_priority_jobs : Async_kernel__.Types.Job_queue.t;
  4. low_priority_jobs : Async_kernel__.Types.Job_queue.t;
  5. very_low_priority_workers : Very_low_priority_worker.t Core.Deque.t;
  6. mutable main_execution_context : Execution_context.t;
  7. mutable current_execution_context : Execution_context.t;
  8. mutable uncaught_exn : (Core.Exn.t * Core.Sexp.t) option;
  9. mutable cycle_count : int;
  10. mutable cycle_start : Core.Time_ns.t;
  11. mutable in_cycle : bool;
  12. mutable run_every_cycle_start : (unit -> unit) array;
  13. run_every_cycle_start_state : (Async_kernel__.Types.Cycle_hook_handle.t, unit -> unit) Core.Hashtbl.t;
  14. mutable run_every_cycle_end : (unit -> unit) array;
  15. run_every_cycle_end_state : (Async_kernel__.Types.Cycle_hook_handle.t, unit -> unit) Core.Hashtbl.t;
  16. mutable last_cycle_time : Core.Core_private.Time_ns_alternate_sexp.Span.t;
  17. mutable last_cycle_num_jobs : int;
  18. mutable total_cycle_time : Core.Core_private.Time_ns_alternate_sexp.Span.t;
  19. mutable time_source : Core.read_write Synchronous_time_source.T1.t;
  20. external_jobs : Async_kernel__.Types.External_job.t Thread_safe_queue.t;
  21. mutable thread_safe_external_job_hook : unit -> unit;
  22. mutable job_queued_hook : (Priority.t -> unit) option;
  23. mutable event_added_hook : (Core.Time_ns.t -> unit) option;
  24. mutable yield : (unit, Core.read_write) Async_kernel__.Types.Bvar.t;
  25. mutable yield_until_no_jobs_remain : (unit, Core.read_write) Async_kernel__.Types.Bvar.t;
  26. mutable check_invariants : bool;
  27. mutable max_num_jobs_per_priority_per_cycle : Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t;
  28. mutable record_backtraces : bool;
}
Sourceval record_backtraces : t -> bool
Sourceval set_record_backtraces : t -> bool -> unit
Sourceval max_num_jobs_per_priority_per_cycle : t -> Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t
Sourceval set_max_num_jobs_per_priority_per_cycle : t -> Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t -> unit
Sourceval check_invariants : t -> bool
Sourceval set_check_invariants : t -> bool -> unit
Sourceval yield_until_no_jobs_remain : t -> (unit, Core.read_write) Async_kernel__.Types.Bvar.t
Sourceval set_yield_until_no_jobs_remain : t -> (unit, Core.read_write) Async_kernel__.Types.Bvar.t -> unit
Sourceval yield : t -> (unit, Core.read_write) Async_kernel__.Types.Bvar.t
Sourceval set_yield : t -> (unit, Core.read_write) Async_kernel__.Types.Bvar.t -> unit
Sourceval event_added_hook : t -> (Core.Time_ns.t -> unit) option
Sourceval set_event_added_hook : t -> (Core.Time_ns.t -> unit) option -> unit
Sourceval job_queued_hook : t -> (Priority.t -> unit) option
Sourceval set_job_queued_hook : t -> (Priority.t -> unit) option -> unit
Sourceval thread_safe_external_job_hook : t -> unit -> unit
Sourceval set_thread_safe_external_job_hook : t -> (unit -> unit) -> unit
Sourceval external_jobs : t -> Async_kernel__.Types.External_job.t Thread_safe_queue.t
Sourceval set_time_source : t -> Core.read_write Synchronous_time_source.T1.t -> unit
Sourceval set_total_cycle_time : t -> Core.Core_private.Time_ns_alternate_sexp.Span.t -> unit
Sourceval set_last_cycle_num_jobs : t -> int -> unit
Sourceval set_last_cycle_time : t -> Core.Core_private.Time_ns_alternate_sexp.Span.t -> unit
Sourceval run_every_cycle_end_state : t -> (Async_kernel__.Types.Cycle_hook_handle.t, unit -> unit) Core.Hashtbl.t
Sourceval run_every_cycle_end : t -> (unit -> unit) array
Sourceval set_run_every_cycle_end : t -> (unit -> unit) array -> unit
Sourceval run_every_cycle_start_state : t -> (Async_kernel__.Types.Cycle_hook_handle.t, unit -> unit) Core.Hashtbl.t
Sourceval run_every_cycle_start : t -> (unit -> unit) array
Sourceval set_run_every_cycle_start : t -> (unit -> unit) array -> unit
Sourceval in_cycle : t -> bool
Sourceval set_in_cycle : t -> bool -> unit
Sourceval cycle_start : t -> Core.Time_ns.t
Sourceval set_cycle_start : t -> Core.Time_ns.t -> unit
Sourceval cycle_count : t -> int
Sourceval set_cycle_count : t -> int -> unit
Sourceval set_uncaught_exn : t -> (Core.Exn.t * Core.Sexp.t) option -> unit
Sourceval set_current_execution_context : t -> Execution_context.t -> unit
Sourceval main_execution_context : t -> Execution_context.t
Sourceval set_main_execution_context : t -> Execution_context.t -> unit
Sourceval very_low_priority_workers : t -> Very_low_priority_worker.t Core.Deque.t
Sourceval low_priority_jobs : t -> Async_kernel__.Types.Job_queue.t
Sourceval normal_priority_jobs : t -> Async_kernel__.Types.Job_queue.t
Sourceval set_job_pool : t -> (Execution_context.t, Obj.t -> unit, Obj.t) Tuple_pool.Slots.t3 Tuple_pool.t -> unit
Sourcemodule Fields : sig ... end
Sourceval sexp_of_t : t -> Sexplib0.Sexp.t
Sourceval uncaught_exn_unwrapped : t -> (Core.Exn.t * Core.Sexp.t) option
Sourceval uncaught_exn : t -> Core.Error.t option
Sourceval num_pending_jobs : t -> int
Sourceval num_jobs_run : t -> int
Sourceval last_cycle_num_jobs : t -> int
Sourceval unordered_is_sublist : equal:('a -> 'b -> bool) -> sublist:'b list -> 'a Core.Array.t -> bool
Sourceval check_hook_table_invariant : ('a, 'b) Core.Hashtbl.t -> 'b Core.Array.t -> unit
Sourceval invariant : t -> unit
Sourceval enqueue : t -> Execution_context.t -> ('a -> unit) -> 'a -> unit
Sourceval enqueue_job : t -> (Execution_context.t * (Obj.t -> unit) * Obj.t, [ `S0 of Execution_context.t | `S1 of Obj.t -> unit | `S2 of Obj.t ]) Tuple_pool.Slots.t Tuple_pool.Pointer.t -> free_job:bool -> unit
Sourceval handle_fired : 'a Synchronous_time_source.T1.t -> Async_kernel__.Types.Job_or_event.t -> unit
Sourceval create : unit -> t
Sourceval is_dead : t -> bool
Sourceval set_check_access : t -> (unit -> unit) option -> unit
Sourceval backtrace_of_first_job : t -> Core.Backtrace.t option
Sourceval t_ref : t Core.ref
Sourceval check_access : t -> unit
Sourceval t : unit -> t
Sourceval current_execution_context : t -> Execution_context.t
Sourceval with_execution_context1 : t -> Async_kernel__Types.Execution_context.t -> f:('a -> 'b) -> 'a -> 'b
Sourceval with_execution_context : t -> Async_kernel__Types.Execution_context.t -> f:(unit -> 'a) -> 'a
Sourceval create_job : t -> Execution_context.t -> ('a -> unit) -> 'a -> (Execution_context.t, Obj.t -> unit, Obj.t) Tuple_pool.Slots.t3 Tuple_pool.Pointer.t
Sourceval got_uncaught_exn : t -> Core.Exn.t -> Core.Sexp.t -> unit
Sourceval start_cycle : t -> max_num_jobs_per_priority: Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t -> unit
Sourceval run_jobs : t -> (unit, exn * Core.Backtrace.t) Core._result
Sourceval stabilize : t -> (unit, exn) Core._result
Sourceval create_time_source : ?timing_wheel_config:Timing_wheel.Config.t -> now:Core.Time_ns.t -> unit -> 'a Synchronous_time_source.T1.t
Sourceval wall_clock : unit -> Synchronous_time_source.t
OCaml

Innovation. Community. Security.