我有一个UDP套接字在接收数据。
pub async fn start() -> Result<(), std::io::Error> {
loop {
let mut data = vec![0; 1024];
socket.recv_from(&mut data).await?;
}
}
当没有数据进来时,此代码当前被阻止在.await
处。我想从我的主线程优雅地关闭服务器,那么我该如何向此.await
发送信号,告诉它停止等待并关闭呢?
tokio::select
同时等待数据和关闭信号(你可以使用tokio::broadcast
)。 - user4815162342