You can test this using the Python client from [here](/lang/python/net/tcp/TrivialSendRecv). ```rust use std::io::{Read, Write}; use std::net::{TcpListener, TcpStream}; use std::thread; use std::time::Duration; fn handle_client(mut stream: TcpStream) { let mut buffer = [0; 512]; loop { match stream.read(&mut buffer) { Ok(0) => { println!("Client disconnected"); break; } Ok(n) => { println!("Received message: {}", String::from_utf8_lossy(&buffer[..n])); stream.write_all(&buffer[..n]).expect("Failed to write stream"); } Err(e) => { eprintln!("Failed to read from socket: {:?}",e); break; } } thread::sleep(Duration::from_secs(1)); } } fn main() -> std::io::Result<()> { let listener = TcpListener::bind("0.0.0.0:8000"); println!("Listening on 0.0.0.0:8000"); for stream in listener?.incoming() { match stream { Ok(stream) => { println!("New client connected"); thread::spawn(|| handle_client(stream)); } Err(e) => { eprintln!("Failed to accept a client: {:?}",e); } } } Ok(()) } ```