Skip to main content

KernelObserver

Trait KernelObserver 

Source
pub trait KernelObserver: Send + Sync {
    // Required method
    fn on_event(&self, event: &KernelEvent);
}
Expand description

Sink for KernelEvents. Implementations are invoked in BTreeMap<ObserverHandle, _> order during the post-commit drain of Kernel::step. Panics inside on_event are caught and result in first-panic eviction of the observer (A22).

Implementors must be Send + Sync because the kernel may move observers across threads in higher-level setups (e.g. for off-thread fan-out); the kernel itself remains single-threaded.

Required Methods§

Source

fn on_event(&self, event: &KernelEvent)

Receive one kernel event. Filtered by super::event::EventMask when registered via super::kernel::Kernel::register_observer_filtered; register_observer is the unfiltered shorthand.

Implementors§