examples: use select! instead of join! in connect_(tcp|udp) examples (#7842)

This commit is contained in:
Zachary Becker
2026-01-07 22:52:10 -08:00
committed by GitHub
parent d65165f7b5
commit 2d4853ea16
2 changed files with 9 additions and 4 deletions

View File

@@ -64,8 +64,10 @@ pub async fn connect(
})
.map(Ok);
match future::join(sink.send_all(&mut stdin), stdout.send_all(&mut stream)).await {
(Err(e), _) | (_, Err(e)) => Err(e.into()),
_ => Ok(()),
tokio::select! {
r = sink.send_all(&mut stdin) => r?,
r = stdout.send_all(&mut stream) => r?,
}
Ok(())
}

View File

@@ -59,7 +59,10 @@ pub async fn connect(
let socket = UdpSocket::bind(&bind_addr).await?;
socket.connect(addr).await?;
tokio::try_join!(send(stdin, &socket), recv(stdout, &socket))?;
tokio::select! {
r = send(stdin, &socket) => r?,
r = recv(stdout, &socket) => r?,
}
Ok(())
}