package async_kernel

  1. Overview
  2. Docs
Module type
Class type
type t
val sexp_of_t : t -> Ppx_sexp_conv_lib.Sexp.t
include Core_kernel.Invariant.S with type t := t
val invariant : t -> unit

These are like the corresponding run_* functions, except they return an event that one can later abort.

module Abort_result : sig ... end
val abort : [> ] T1.t -> t -> Abort_result.t

abort t aborts the event t, if possible, and returns Ok if the event was aborted, or the reason it could not be aborted. abort returns Currently_happening iff it is called on an event while running that event's callback.

val abort_exn : [> ] T1.t -> t -> unit
val abort_if_possible : [> ] T1.t -> t -> unit
val create : [> ] T1.t -> callback -> t

create timesource callback creates an event that is not scheduled in timesource's timing wheel but is available to be scheduled using schedule_at and schedule_after.

schedule_at timesource t time schedules t to fire at time. schedule_at returns Error if t is currently scheduled to run.