1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
use tokio::task::AbortHandle; #[derive(Debug)] pub struct BackgroundTask(AbortHandle); impl BackgroundTask { pub const fn new(handle: AbortHandle) -> Self { Self(handle) } } impl Drop for BackgroundTask { fn drop(&mut self) { self.0.abort(); } }