package async_kernel

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
val names : string list
val on_end_of_cycle : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm
val on_start_of_cycle : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm
val record_backtraces : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm
val max_num_jobs_per_priority_per_cycle : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) Fieldslib.Field.t_with_perm
val check_invariants : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm
val yield_until_no_jobs_remain : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm
val yield : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm
val event_added_hook : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Time_ns.t -> unit) option) Fieldslib.Field.t_with_perm
val job_queued_hook : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Priority.t -> unit) option) Fieldslib.Field.t_with_perm
val thread_safe_external_job_hook : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm
val external_jobs : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.External_job.t Thread_safe_queue.t) Fieldslib.Field.t_with_perm
val time_source : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.read_write Async_kernel__.Types.Time_source.t1) Fieldslib.Field.t_with_perm
val total_cycle_time : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm
val last_cycle_num_jobs : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm
val last_cycle_time : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm
val run_every_cycle_end : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm
val run_every_cycle_start : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm
val in_cycle : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm
val cycle_start : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Time_ns.t) Fieldslib.Field.t_with_perm
val cycle_count : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm
val uncaught_exn : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) Fieldslib.Field.t_with_perm
val current_execution_context : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm
val main_execution_context : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm
val very_low_priority_workers : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Very_low_priority_worker.t Core_kernel.Deque.t) Fieldslib.Field.t_with_perm
val low_priority_jobs : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm
val normal_priority_jobs : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm
val job_pool : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Execution_context.t, Obj.t -> unit, Obj.t) Tuple_pool.Slots.t3 Tuple_pool.t) Fieldslib.Field.t_with_perm
val check_access : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) option) Fieldslib.Field.t_with_perm
val make_creator : check_access: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) option) Fieldslib.Field.t_with_perm -> 'a -> ('b -> (unit -> unit) option) * 'c) -> job_pool: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Execution_context.t, Obj.t -> unit, Obj.t) Tuple_pool.Slots.t3 Tuple_pool.t) Fieldslib.Field.t_with_perm -> 'c -> ('b -> (Execution_context.t, Obj.t -> unit, Obj.t) Tuple_pool.Slots.t3 Tuple_pool.t) * 'd) -> normal_priority_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> 'd -> ('b -> Async_kernel__.Types.Job_queue.t) * 'e) -> low_priority_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> 'e -> ('b -> Async_kernel__.Types.Job_queue.t) * 'f) -> very_low_priority_workers: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Very_low_priority_worker.t Core_kernel.Deque.t) Fieldslib.Field.t_with_perm -> 'f -> ('b -> Async_kernel__.Types.Very_low_priority_worker.t Core_kernel.Deque.t) * 'g) -> main_execution_context: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm -> 'g -> ('b -> Execution_context.t) * 'h) -> current_execution_context: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm -> 'h -> ('b -> Execution_context.t) * 'i) -> uncaught_exn: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) Fieldslib.Field.t_with_perm -> 'i -> ('b -> (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) * 'j) -> cycle_count: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm -> 'j -> ('b -> int) * 'k) -> cycle_start: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Time_ns.t) Fieldslib.Field.t_with_perm -> 'k -> ('b -> Core_kernel.Time_ns.t) * 'l) -> in_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> 'l -> ('b -> bool) * 'm) -> run_every_cycle_start: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> 'm -> ('b -> (unit -> unit) list) * 'n) -> run_every_cycle_end: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> 'n -> ('b -> (unit -> unit) list) * 'o) -> last_cycle_time: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> 'o -> ('b -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) * 'p) -> last_cycle_num_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm -> 'p -> ('b -> int) * 'q) -> total_cycle_time: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> 'q -> ('b -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) * 'r) -> time_source: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.read_write Async_kernel__.Types.Time_source.t1) Fieldslib.Field.t_with_perm -> 'r -> ('b -> Core_kernel.read_write Async_kernel__.Types.Time_source.t1) * 's) -> external_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.External_job.t Thread_safe_queue.t) Fieldslib.Field.t_with_perm -> 's -> ('b -> Async_kernel__.Types.External_job.t Thread_safe_queue.t) * 't) -> thread_safe_external_job_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> 't -> ('b -> unit -> unit) * 'u) -> job_queued_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Priority.t -> unit) option) Fieldslib.Field.t_with_perm -> 'u -> ('b -> (Priority.t -> unit) option) * 'v) -> event_added_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Time_ns.t -> unit) option) Fieldslib.Field.t_with_perm -> 'v -> ('b -> (Core_kernel.Time_ns.t -> unit) option) * 'w) -> yield: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm -> 'w -> ('b -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) * 'x) -> yield_until_no_jobs_remain: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm -> 'x -> ('b -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) * 'y) -> check_invariants: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> 'y -> ('b -> bool) * 'z) -> max_num_jobs_per_priority_per_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) Fieldslib.Field.t_with_perm -> 'z -> ('b -> Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) * 'a1) -> record_backtraces: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> 'a1 -> ('b -> bool) * 'b1) -> on_start_of_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> 'b1 -> ('b -> unit -> unit) * 'c1) -> on_end_of_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> 'c1 -> ('b -> unit -> unit) * 'd1) -> 'a -> ('b -> Async_kernel__.Types.Scheduler.t) * 'd1
val create : check_access:(unit -> unit) option -> job_pool: (Execution_context.t, Obj.t -> unit, Obj.t) Tuple_pool.Slots.t3 Tuple_pool.t -> normal_priority_jobs:Async_kernel__.Types.Job_queue.t -> low_priority_jobs:Async_kernel__.Types.Job_queue.t -> very_low_priority_workers: Async_kernel__.Types.Very_low_priority_worker.t Core_kernel.Deque.t -> main_execution_context:Execution_context.t -> current_execution_context:Execution_context.t -> uncaught_exn:(Core_kernel.Exn.t * Core_kernel.Sexp.t) option -> cycle_count:int -> cycle_start:Core_kernel.Time_ns.t -> in_cycle:bool -> run_every_cycle_start:(unit -> unit) list -> run_every_cycle_end:(unit -> unit) list -> last_cycle_time:Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> last_cycle_num_jobs:int -> total_cycle_time: Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t -> time_source:Core_kernel.read_write Async_kernel__.Types.Time_source.t1 -> external_jobs:Async_kernel__.Types.External_job.t Thread_safe_queue.t -> thread_safe_external_job_hook:(unit -> unit) -> job_queued_hook:(Priority.t -> unit) option -> event_added_hook:(Core_kernel.Time_ns.t -> unit) option -> yield:(unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t -> yield_until_no_jobs_remain: (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t -> check_invariants:bool -> max_num_jobs_per_priority_per_cycle: Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t -> record_backtraces:bool -> on_start_of_cycle:(unit -> unit) -> on_end_of_cycle:(unit -> unit) -> Async_kernel__.Types.Scheduler.t
val map : check_access: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) option) Fieldslib.Field.t_with_perm -> (unit -> unit) option) -> job_pool: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Execution_context.t, Obj.t -> unit, Obj.t) Tuple_pool.Slots.t3 Tuple_pool.t) Fieldslib.Field.t_with_perm -> (Execution_context.t, Obj.t -> unit, Obj.t) Tuple_pool.Slots.t3 Tuple_pool.t) -> normal_priority_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> Async_kernel__.Types.Job_queue.t) -> low_priority_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> Async_kernel__.Types.Job_queue.t) -> very_low_priority_workers: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Very_low_priority_worker.t Core_kernel.Deque.t) Fieldslib.Field.t_with_perm -> Async_kernel__.Types.Very_low_priority_worker.t Core_kernel.Deque.t) -> main_execution_context: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm -> Execution_context.t) -> current_execution_context: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm -> Execution_context.t) -> uncaught_exn: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) Fieldslib.Field.t_with_perm -> (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) -> cycle_count: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm -> int) -> cycle_start: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Time_ns.t) Fieldslib.Field.t_with_perm -> Core_kernel.Time_ns.t) -> in_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> bool) -> run_every_cycle_start: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> (unit -> unit) list) -> run_every_cycle_end: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> (unit -> unit) list) -> last_cycle_time: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) -> last_cycle_num_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm -> int) -> total_cycle_time: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) -> time_source: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.read_write Async_kernel__.Types.Time_source.t1) Fieldslib.Field.t_with_perm -> Core_kernel.read_write Async_kernel__.Types.Time_source.t1) -> external_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.External_job.t Thread_safe_queue.t) Fieldslib.Field.t_with_perm -> Async_kernel__.Types.External_job.t Thread_safe_queue.t) -> thread_safe_external_job_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> unit -> unit) -> job_queued_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Priority.t -> unit) option) Fieldslib.Field.t_with_perm -> (Priority.t -> unit) option) -> event_added_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Time_ns.t -> unit) option) Fieldslib.Field.t_with_perm -> (Core_kernel.Time_ns.t -> unit) option) -> yield: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) -> yield_until_no_jobs_remain: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm -> (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) -> check_invariants: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> bool) -> max_num_jobs_per_priority_per_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) Fieldslib.Field.t_with_perm -> Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) -> record_backtraces: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> bool) -> on_start_of_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> unit -> unit) -> on_end_of_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> unit -> unit) -> Async_kernel__.Types.Scheduler.t
val iter : check_access: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) option) Fieldslib.Field.t_with_perm -> unit) -> job_pool: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Execution_context.t, Obj.t -> unit, Obj.t) Tuple_pool.Slots.t3 Tuple_pool.t) Fieldslib.Field.t_with_perm -> unit) -> normal_priority_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> unit) -> low_priority_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> unit) -> very_low_priority_workers: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Very_low_priority_worker.t Core_kernel.Deque.t) Fieldslib.Field.t_with_perm -> unit) -> main_execution_context: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm -> unit) -> current_execution_context: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm -> unit) -> uncaught_exn: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) Fieldslib.Field.t_with_perm -> unit) -> cycle_count: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm -> unit) -> cycle_start: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Time_ns.t) Fieldslib.Field.t_with_perm -> unit) -> in_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> unit) -> run_every_cycle_start: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> unit) -> run_every_cycle_end: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> unit) -> last_cycle_time: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> unit) -> last_cycle_num_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm -> unit) -> total_cycle_time: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> unit) -> time_source: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.read_write Async_kernel__.Types.Time_source.t1) Fieldslib.Field.t_with_perm -> unit) -> external_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.External_job.t Thread_safe_queue.t) Fieldslib.Field.t_with_perm -> unit) -> thread_safe_external_job_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> unit) -> job_queued_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Priority.t -> unit) option) Fieldslib.Field.t_with_perm -> unit) -> event_added_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Time_ns.t -> unit) option) Fieldslib.Field.t_with_perm -> unit) -> yield: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm -> unit) -> yield_until_no_jobs_remain: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm -> unit) -> check_invariants: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> unit) -> max_num_jobs_per_priority_per_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) Fieldslib.Field.t_with_perm -> unit) -> record_backtraces: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> unit) -> on_start_of_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> unit) -> on_end_of_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> unit) -> unit
val fold : init:'a -> check_access: ('a -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) option) Fieldslib.Field.t_with_perm -> 'b) -> job_pool: ('b -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Execution_context.t, Obj.t -> unit, Obj.t) Tuple_pool.Slots.t3 Tuple_pool.t) Fieldslib.Field.t_with_perm -> 'c) -> normal_priority_jobs: ('c -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> 'd) -> low_priority_jobs: ('d -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> 'e) -> very_low_priority_workers: ('e -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Very_low_priority_worker.t Core_kernel.Deque.t) Fieldslib.Field.t_with_perm -> 'f) -> main_execution_context: ('f -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm -> 'g) -> current_execution_context: ('g -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm -> 'h) -> uncaught_exn: ('h -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) Fieldslib.Field.t_with_perm -> 'i) -> cycle_count: ('i -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm -> 'j) -> cycle_start: ('j -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Time_ns.t) Fieldslib.Field.t_with_perm -> 'k) -> in_cycle: ('k -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> 'l) -> run_every_cycle_start: ('l -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> 'm) -> run_every_cycle_end: ('m -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> 'n) -> last_cycle_time: ('n -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> 'o) -> last_cycle_num_jobs: ('o -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm -> 'p) -> total_cycle_time: ('p -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> 'q) -> time_source: ('q -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.read_write Async_kernel__.Types.Time_source.t1) Fieldslib.Field.t_with_perm -> 'r) -> external_jobs: ('r -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.External_job.t Thread_safe_queue.t) Fieldslib.Field.t_with_perm -> 's) -> thread_safe_external_job_hook: ('s -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> 't) -> job_queued_hook: ('t -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Priority.t -> unit) option) Fieldslib.Field.t_with_perm -> 'u) -> event_added_hook: ('u -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Time_ns.t -> unit) option) Fieldslib.Field.t_with_perm -> 'v) -> yield: ('v -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm -> 'w) -> yield_until_no_jobs_remain: ('w -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm -> 'x) -> check_invariants: ('x -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> 'y) -> max_num_jobs_per_priority_per_cycle: ('y -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) Fieldslib.Field.t_with_perm -> 'z) -> record_backtraces: ('z -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> 'a1) -> on_start_of_cycle: ('a1 -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> 'b1) -> on_end_of_cycle: ('b1 -> ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> 'c1) -> 'c1
val map_poly : ([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, 'a) Fieldslib.Field.user -> 'a list
val for_all : check_access: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) option) Fieldslib.Field.t_with_perm -> bool) -> job_pool: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Execution_context.t, Obj.t -> unit, Obj.t) Tuple_pool.Slots.t3 Tuple_pool.t) Fieldslib.Field.t_with_perm -> bool) -> normal_priority_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> bool) -> low_priority_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> bool) -> very_low_priority_workers: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Very_low_priority_worker.t Core_kernel.Deque.t) Fieldslib.Field.t_with_perm -> bool) -> main_execution_context: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm -> bool) -> current_execution_context: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm -> bool) -> uncaught_exn: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) Fieldslib.Field.t_with_perm -> bool) -> cycle_count: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm -> bool) -> cycle_start: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Time_ns.t) Fieldslib.Field.t_with_perm -> bool) -> in_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> bool) -> run_every_cycle_start: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> bool) -> run_every_cycle_end: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> bool) -> last_cycle_time: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> bool) -> last_cycle_num_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm -> bool) -> total_cycle_time: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> bool) -> time_source: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.read_write Async_kernel__.Types.Time_source.t1) Fieldslib.Field.t_with_perm -> bool) -> external_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.External_job.t Thread_safe_queue.t) Fieldslib.Field.t_with_perm -> bool) -> thread_safe_external_job_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> bool) -> job_queued_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Priority.t -> unit) option) Fieldslib.Field.t_with_perm -> bool) -> event_added_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Time_ns.t -> unit) option) Fieldslib.Field.t_with_perm -> bool) -> yield: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm -> bool) -> yield_until_no_jobs_remain: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm -> bool) -> check_invariants: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> bool) -> max_num_jobs_per_priority_per_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) Fieldslib.Field.t_with_perm -> bool) -> record_backtraces: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> bool) -> on_start_of_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> bool) -> on_end_of_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> bool) -> bool
val exists : check_access: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) option) Fieldslib.Field.t_with_perm -> bool) -> job_pool: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Execution_context.t, Obj.t -> unit, Obj.t) Tuple_pool.Slots.t3 Tuple_pool.t) Fieldslib.Field.t_with_perm -> bool) -> normal_priority_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> bool) -> low_priority_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> bool) -> very_low_priority_workers: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Very_low_priority_worker.t Core_kernel.Deque.t) Fieldslib.Field.t_with_perm -> bool) -> main_execution_context: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm -> bool) -> current_execution_context: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm -> bool) -> uncaught_exn: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) Fieldslib.Field.t_with_perm -> bool) -> cycle_count: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm -> bool) -> cycle_start: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Time_ns.t) Fieldslib.Field.t_with_perm -> bool) -> in_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> bool) -> run_every_cycle_start: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> bool) -> run_every_cycle_end: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> bool) -> last_cycle_time: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> bool) -> last_cycle_num_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm -> bool) -> total_cycle_time: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> bool) -> time_source: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.read_write Async_kernel__.Types.Time_source.t1) Fieldslib.Field.t_with_perm -> bool) -> external_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.External_job.t Thread_safe_queue.t) Fieldslib.Field.t_with_perm -> bool) -> thread_safe_external_job_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> bool) -> job_queued_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Priority.t -> unit) option) Fieldslib.Field.t_with_perm -> bool) -> event_added_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Time_ns.t -> unit) option) Fieldslib.Field.t_with_perm -> bool) -> yield: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm -> bool) -> yield_until_no_jobs_remain: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm -> bool) -> check_invariants: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> bool) -> max_num_jobs_per_priority_per_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) Fieldslib.Field.t_with_perm -> bool) -> record_backtraces: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> bool) -> on_start_of_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> bool) -> on_end_of_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> bool) -> bool
val to_list : check_access: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) option) Fieldslib.Field.t_with_perm -> 'a) -> job_pool: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Execution_context.t, Obj.t -> unit, Obj.t) Tuple_pool.Slots.t3 Tuple_pool.t) Fieldslib.Field.t_with_perm -> 'a) -> normal_priority_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> 'a) -> low_priority_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Job_queue.t) Fieldslib.Field.t_with_perm -> 'a) -> very_low_priority_workers: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.Very_low_priority_worker.t Core_kernel.Deque.t) Fieldslib.Field.t_with_perm -> 'a) -> main_execution_context: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm -> 'a) -> current_execution_context: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Execution_context.t) Fieldslib.Field.t_with_perm -> 'a) -> uncaught_exn: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Exn.t * Core_kernel.Sexp.t) option) Fieldslib.Field.t_with_perm -> 'a) -> cycle_count: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm -> 'a) -> cycle_start: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Time_ns.t) Fieldslib.Field.t_with_perm -> 'a) -> in_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> 'a) -> run_every_cycle_start: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> 'a) -> run_every_cycle_end: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit -> unit) list) Fieldslib.Field.t_with_perm -> 'a) -> last_cycle_time: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> 'a) -> last_cycle_num_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, int) Fieldslib.Field.t_with_perm -> 'a) -> total_cycle_time: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.Core_kernel_private.Time_ns_alternate_sexp.Span.t) Fieldslib.Field.t_with_perm -> 'a) -> time_source: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Core_kernel.read_write Async_kernel__.Types.Time_source.t1) Fieldslib.Field.t_with_perm -> 'a) -> external_jobs: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel__.Types.External_job.t Thread_safe_queue.t) Fieldslib.Field.t_with_perm -> 'a) -> thread_safe_external_job_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> 'a) -> job_queued_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Priority.t -> unit) option) Fieldslib.Field.t_with_perm -> 'a) -> event_added_hook: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (Core_kernel.Time_ns.t -> unit) option) Fieldslib.Field.t_with_perm -> 'a) -> yield: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm -> 'a) -> yield_until_no_jobs_remain: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, (unit, Core_kernel.read_write) Async_kernel__.Types.Bvar.t) Fieldslib.Field.t_with_perm -> 'a) -> check_invariants: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> 'a) -> max_num_jobs_per_priority_per_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, Async_kernel_config.Max_num_jobs_per_priority_per_cycle.t) Fieldslib.Field.t_with_perm -> 'a) -> record_backtraces: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, bool) Fieldslib.Field.t_with_perm -> 'a) -> on_start_of_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> 'a) -> on_end_of_cycle: (([< `Read | `Set_and_create ], Async_kernel__.Types.Scheduler.t, unit -> unit) Fieldslib.Field.t_with_perm -> 'a) -> 'a list
module Direct : sig ... end
OCaml

Innovation. Community. Security.