use std::io;
use std::io::{ MemWriter, Acceptor, Listener, TcpStream, IoResult, IoError, EndOfFile };
use std::io::net::tcp::{ TcpAcceptor, TcpListener };
+use std::thread::Thread;
use packet;
use packet::{ Packet, ReadingResult, PacketType };
use packet::PacketType::{ Command, Answer, Error };
acceptor: acceptor.clone()
};
- spawn(proc() {
+ Thread::spawn(move || {
loop {
for stream in acceptor.incoming() {
match stream {
- Ok(stream) => spawn(proc() {
- Server::handle_client(EndPoint::new(stream, variant));
- }),
+ Ok(stream) =>
+ Thread::spawn(move || {
+ Server::handle_client(EndPoint::new(stream, variant));
+ }).detach(),
_ => return
}
}
}
- });
+ }).detach();
Ok(server)
}
let mut nb_test_passed = 0;
for (i, test) in range(1, tests.len()+1).zip(tests.iter_mut()) {
- println!("===== Test case #{}:", i)
+ println!("===== Test case #{}:", i);
if execute(test) {
nb_test_passed += 1;
println!("===== Test passed");