diff --git a/src/runtime2/scheduler.rs b/src/runtime2/scheduler.rs index 708d4c9ec6571ce57cc104abb50d84ae80f71920..d3159c82aec89f2d63ea6b11a71917be3a285417 100644 --- a/src/runtime2/scheduler.rs +++ b/src/runtime2/scheduler.rs @@ -75,7 +75,10 @@ impl Scheduler { CompScheduling::Immediate => unreachable!(), CompScheduling::Requeue => { self.runtime.enqueue_work(comp_key); }, CompScheduling::Sleep => { self.mark_component_as_sleeping(comp_key, component); }, - CompScheduling::Exit => { self.mark_component_as_exiting(&scheduler_ctx, component); } + CompScheduling::Exit => { + component.component.on_shutdown(&scheduler_ctx); + self.mark_component_as_exiting(&scheduler_ctx, component); + } } } }