Red de conocimiento informático - Problemas con los teléfonos móviles - Cómo utilizar subprocesos múltiples en el servidor de socket

Cómo utilizar subprocesos múltiples en el servidor de socket

importar java.io.*;

importar java.net.*;

Clase pública ChatServer {

booleano iniciado = falso ;

ServerSocket ss = null;

public static void main(String[] args) {

new ChatServer().start();

}

public void start() {

prueba {

ss = new ServerSocket(8888

iniciado); = verdadero;

} captura (BindException e) {

System.exit(0);

} captura (IOException e) {

e.printStackTrace();

}

prueba {

while(iniciado) {

Socket s = ss.accept ();

Cliente c = nuevo(s) Cliente(s);

System.out.println("¡un cliente conectado!");

new Thread( c).start();

//dis.close();

}

} catch (IOException e) {

e.printStackTrace();

} finalmente {

prueba {

ss.close()

} catch (IOException); e) {

// TODO Bloque de captura generado automáticamente

e.printStackTrace();

}

}

}

clase Cliente implementa Runnable {

sockets privados

dataInputStream privado dis = null

booleano privado; bConnected = false;

Cliente público (Socket s) {

this.s = s;

prueba {

dis = nuevo DataInputStream(s.getInputStream());

bConnected = true;

} catch (IOException e) {

// TODO Bloque de captura generado automáticamente

e.printStac

kTrace();

}

}

public void run() {

prueba {

mientras (bConectado) {

String str = dis.readUTF();

System.out.println(

}

} catch (EOFException e) {

System.out.println("¡Cliente cerrado!"

} catch (IOException e) {

e); .printStackTrace();

} finalmente {

prueba {

if(dis != null) dis.close();

if(s != null) s.close();

} catch (IOException e1) {

e1.printStackTrace();

}

}

}

}

}