pub async fn join_tasks(tasks: Vec<JoinHandle<()>>, grace: Duration) -> bool
Joins background tasks within a bounded shutdown grace period.