package eio
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=52f85b947d3e0de70940b5bbaac0d3e78841fea5648e73af7d8a754ab51c871b
sha512=944095b1131d2dcc1f0d415fe46fd78b883733e0f95985e3a0feafe73b1703606ec60560abf36c16c364cc60164b7330f236e39569e264c702bb5647e28bfd3c
doc/eio.runtime_events/Eio_runtime_events/index.html
Module Eio_runtime_eventsSource
This library is used to write event traces using OCaml's runtime events infrastructure.
Writing events
Consuming events
type event = [ | `Create of id * [ `Fiber_in of id | `Cc of cc_ty | `Obj of obj_ty ]| `Fiber of id(*The given fiber is now running.
*)| `Name of id * string(*Names a promise, stream, etc.
*)| `Log of string(*The running fiber logs a message.
*)| `Enter_span of string(*The running fiber enters a traced section.
*)| `Exit_span(*The running fiber leaves the current traced section.
*)| `Get of id(*The running fiber gets a value from a promise, stream, acquires a lock, etc.
*)| `Try_get of id(*The running fiber wants to get, but must wait.
*)| `Put of id(*The running fiber resolves a promise, adds to a stream, releases a lock etc.
*)| `Error of id * string(*A CC fails with the given error.
*)| `Exit_cc(*The current CC ends.
*)| `Exit_fiber of id(*The running fiber ends.
*)| `Suspend_domain of Runtime_events.Type.span(*The domain asks the OS to wait for events.
*)| `Suspend_fiber of string(*The running fiber is suspended (until resumed by
*)`Fiber).
]pp_event formats an event as a human-readable string
val add_callbacks :
(int -> Runtime_events.Timestamp.t -> event -> unit) ->
Runtime_events.Callbacks.t ->
Runtime_events.Callbacks.tadd_callbacks fn x adds event handler fn to x.
When an Eio event is processed, it calls fn ring_id ts event.