| : (unit -> unit) option | ; | ||||
| : Types.Job_pool.t | ; | ||||
| : Types.Job_queue.t | ; | ||||
| : Types.Job_queue.t | ; | ||||
| : Types.Execution_context.t | ; | ||||
| : Types.Execution_context.t | ; | ||||
| : (Core_kernel.Std.Exn.t * Core_kernel.Std.Sexp.t) option | ; | ||||
| : int | ; | ||||
| : Import.Time_ns.t | ; | ||||
| : (unit -> unit) list | ; | ||||
| : Import.Time_ns.Span.t | ; | ||||
| : int | ; | ||||
| : Core_kernel.Std.read_write Types.Time_source.t1 | ; | ||||
| : Types.External_job.t Core_kernel.Std.Thread_safe_queue.t | ; | ||||
| : unit -> unit | ; | ||||
| : (Priority.t -> unit) option | ; | ||||
| : (Import.Time_ns.t -> unit) option | ; | ||||
| : unit Types.Ivar.t option | ; | ||||
| : bool | ; | ||||
| : Import.Max_num_jobs_per_priority_per_cycle.t | ; | ||||
| : bool | ; |
| : (unit -> unit) option | ; | ||||
| : Job_pool.t | ; | ||||
| : Job_queue.t | ; | ||||
| : Job_queue.t | ; | ||||
| : Execution_context.t | ; | ||||
| : Execution_context.t | ; | ||||
| : (Core_kernel.Std.Exn.t * Core_kernel.Std.Sexp.t) option | ; | ||||
| : int | ; | ||||
| : Import.Time_ns.t | ; | ||||
| : (unit -> unit) list | ; | ||||
| : Import.Time_ns.Span.t | ; | ||||
| : int | ; | ||||
| : Core_kernel.Std.read_write Time_source.T1.t | ; | ||||
| : External_job.t Core_kernel.Std.Thread_safe_queue.t | ; | ||||
| : unit -> unit | ; | ||||
| : (Priority.t -> unit) option | ; | ||||
| : (Import.Time_ns.t -> unit) option | ; | ||||
| : unit Types.Ivar.t Core_kernel.Std.sexp_opaque option | ; | ||||
| : bool | ; | ||||
| : Import.Max_num_jobs_per_priority_per_cycle.t | ; | ||||
| : bool | ; |
start_cycle t ~max_num_jobs_per_priority enables subsequent calls of run_jobs
to run up to max_num_jobs_per_priority jobs of each priority level.
run_jobs t removes jobs from t one at a time and runs them, stopping as soon
as an unhandled exception is raised, or when no more jobs can be run at any priority,
as per ~max_num_jobs_per_priority.