#[tokio::main(flavor = "current_thread")]
async fn main() {
tokio::select! {
biased;
_ = tokio::spawn(foo()) => { unreachable!() }
_ = tokio::spawn(foo()) => { unreachable!() }
_ = tokio::spawn(async {}) => {
println!("{}", async_backtrace::taskdump_tree(true));
}
};
}
#[async_backtrace::framed]
async fn foo() {
bar().await;
}
#[async_backtrace::framed]
async fn bar() {
baz().await;
}
#[async_backtrace::framed]
async fn baz() {
std::future::pending::<()>().await
}