Mirror of https://github.com/roostorg/osprey github.com/roostorg/osprey
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at main 18 lines 701 B view raw
1use crate::priority_queue::{PriorityQueueReceiver, PriorityQueueSender}; 2use crate::signals; 3 4pub fn spawn_shutdown_handler( 5 priority_queue_sender: PriorityQueueSender, 6 priority_queue_receiver: PriorityQueueReceiver, 7) { 8 tokio::spawn(async move { 9 tracing::info!("shutdown handler spawned - waiting on exit signal"); 10 signals::exit_signal().await; 11 tracing::info!("got exit signal"); 12 priority_queue_receiver.nack_all_async(); 13 tracing::info!("nacked all outstanding async actions"); 14 tokio::time::sleep(tokio::time::Duration::from_secs(15)).await; 15 priority_queue_sender.close(); 16 tracing::info!("closed priority queue"); 17 }); 18}