Implement Some Tokio Tutorials

This commit is contained in:
GuilhermeWerner
2021-01-19 16:03:55 -03:00
parent 2e7b35e32d
commit 055be51002
12 changed files with 415 additions and 0 deletions

21
Tutorial/EchoCopy.rs Normal file
View File

@ -0,0 +1,21 @@
#![allow(non_snake_case)]
use tokio::io;
use tokio::net::TcpListener;
#[tokio::main]
async fn main() -> io::Result<()> {
let mut listener = TcpListener::bind("127.0.0.1:6142").await.unwrap();
loop {
let (mut socket, _) = listener.accept().await?;
tokio::spawn(async move {
let (mut rd, mut wr) = socket.split();
if io::copy(&mut rd, &mut wr).await.is_err() {
eprintln!("failed to copy");
}
});
}
}