Cancel an active wiring and release any owned coroutine.
522{
524
525 if (!reg.task_name.empty()) {
527 reg.task_name.clear();
528 }
529 if (!reg.chain_name.empty()) {
531 reg.chain_name.clear();
532 }
533 if (!reg.event_name.empty()) {
535 reg.event_name.clear();
536 }
537
539 (*m_bind_detach)();
540 }
541}
Vruta::TaskScheduler & m_scheduler
std::unordered_map< uint32_t, Registration > m_registrations
Vruta::EventManager & m_event_manager
std::optional< std::function< void()> > m_bind_detach
bool cancel_event(const std::shared_ptr< Event > &event)
Cancels and removes a event from the manager.
bool cancel_task(const std::shared_ptr< Routine > &routine)
Cancels and removes a task from the scheduler.