Trait HotReloadableKernel
pub trait HotReloadableKernel: CheckpointableKernel {
// Required methods
fn prepare_for_reload(&mut self) -> Result<(), RingKernelError>;
fn apply_code(
&mut self,
code: &KernelCodeSource,
) -> Result<(), RingKernelError>;
fn resume_after_reload(&mut self) -> Result<(), RingKernelError>;
fn is_ready_for_reload(&self) -> bool;
}Expand description
Trait for kernels that support hot reload.
Required Methods§
fn prepare_for_reload(&mut self) -> Result<(), RingKernelError>
fn prepare_for_reload(&mut self) -> Result<(), RingKernelError>
Prepare kernel for code swap (drain messages, pause processing).
fn apply_code(&mut self, code: &KernelCodeSource) -> Result<(), RingKernelError>
fn apply_code(&mut self, code: &KernelCodeSource) -> Result<(), RingKernelError>
Apply new code to the kernel.
fn resume_after_reload(&mut self) -> Result<(), RingKernelError>
fn resume_after_reload(&mut self) -> Result<(), RingKernelError>
Resume processing after reload.
fn is_ready_for_reload(&self) -> bool
fn is_ready_for_reload(&self) -> bool
Check if kernel is ready for reload.