codice:
import java.io.*;
import java.net.*;
import java.util.*;
public class TCPServer extends Thread {
private int port;
private ServerSocket server;
public TCPServer(int port)throws IOException{
this.port=port;
this.server = new ServerSocket(port);
}
@Override
public void run(){
try{
while(!Thread.interrupted()){
Socket conn = server.accept();
System.out.println("Connesso: "+ conn.getInetAddress().toString());
Connection c = new Connection(conn);
c.start();
}
}catch(IOException ex){
ex.printStackTrace();
}
}
public class Connection extends Thread{
private Socket conn;
private BufferedReader in;
private BufferedWriter out;
public Connection(Socket conn)throws IOException{
this.conn = conn;
this.in = new BufferedReader(new InputStreamReader(conn.getInputStream()));
this.out = new BufferedWriter(new OutputStreamWriter(conn.getOutputStream()));
}
@Override
public void run(){
try{
System.out.println("Attesa...");
Thread.sleep(10000);
this.out.write("check");
System.out.println("Inviato");
}catch(IOException ex){
ex.printStackTrace();
}catch(InterruptedException ex){
ex.printStackTrace();
}
}
}
public static void main(String[] args){
try{
//TCPServer s = new TCPServer(Integer.parseInt(args[0]));
TCPServer s = new TCPServer(9000);
s.start();
int c = System.in.read();
s.interrupt();
s.join();
}catch(IOException ex){
ex.printStackTrace();
}catch(InterruptedException ex){
ex.printStackTrace();
}
}
}
Ho aggiunto tutte le stampe delle eccezioni, ma niente non so davvero cosa sbaglio