Module Require_explicit_time_source.Async_kernel_scheduler

include module type of sig ... end
type 'a with_options = ?⁠monitor:Async_kernel.Monitor.t -> ?⁠priority:Async_kernel.Priority.t -> 'a
val current_execution_context : unit -> Async_kernel.Execution_context.t
val within_context : Async_kernel.Execution_context.t -> (unit -> 'a) -> ('a, unit) Core_kernel.Result.t
val within' : ((unit -> 'a Async_kernel.Deferred.t) -> 'a Async_kernel.Deferred.t) with_options
val within : ((unit -> unit) -> unit) with_options
val within_v : ((unit -> 'a) -> 'a option) with_options
val with_local : 'a Core_kernel.Univ_map.Key.t -> 'a option -> f:(unit -> 'b) -> 'b
val find_local : 'a Core_kernel.Univ_map.Key.t -> 'a option
val schedule' : ((unit -> 'a Async_kernel.Deferred.t) -> 'a Async_kernel.Deferred.t) with_options
val schedule : ((unit -> unit) -> unit) with_options
val enqueue_job : Async_kernel.Execution_context.t -> ('a -> unit) -> 'a -> unit
val thread_safe_enqueue_job : Async_kernel.Execution_context.t -> ('a -> unit) -> 'a -> unit
val preserve_execution_context : ('a -> unit) -> ('a -> unit) Core_kernel.Staged.t
val preserve_execution_context' : ('a -> 'b Async_kernel.Deferred.t) -> ('a -> 'b Async_kernel.Deferred.t) Core_kernel.Staged.t
val cycle_start : unit -> Core_kernel.Time.t
val cycle_start_ns : unit -> Async_kernel__.Import.Time_ns.t
val cycle_times : unit -> Core_kernel.Time.Span.t Async_kernel__.Async_stream.t
val cycle_times_ns : unit -> Async_kernel__.Import.Time_ns.Span.t Async_kernel__.Async_stream.t
val long_cycles : at_least:Async_kernel__.Import.Time_ns.Span.t -> Async_kernel__.Import.Time_ns.Span.t Async_kernel__.Async_stream.t
val cycle_count : unit -> int
val total_cycle_time : unit -> Async_kernel__.Import.Time_ns.Span.t
val event_precision : unit -> Core_kernel.Time.Span.t
val event_precision_ns : unit -> Async_kernel__.Import.Time_ns.Span.t
val force_current_cycle_to_end : unit -> unit
val set_max_num_jobs_per_priority_per_cycle : int -> unit
val max_num_jobs_per_priority_per_cycle : unit -> int
val set_record_backtraces : bool -> unit
val yield : unit -> unit Async_kernel.Deferred.t
val yield_until_no_jobs_remain : unit -> unit Async_kernel.Deferred.t
val yield_every : n:int -> (unit -> unit Async_kernel.Deferred.t) Core_kernel.Staged.t
val num_jobs_run : unit -> int
val num_pending_jobs : unit -> int
module Private = Async_kernel__.Scheduler
val cycle_start : unit -> Async_kernel__Require_explicit_time_source.Time.t
val cycle_start_ns : unit -> Async_kernel__Require_explicit_time_source.Time_ns.t