Cita:
Iniciado por dafrantu lo que no entiendo que es lo que hace :
Código:
public clientThread(Socket clientSocket, clientThread[] threads) {
this.clientSocket = clientSocket;
this.threads = threads;
maxCliente = threads.length;
}
Es el constructor en el cual almacena los datos del thread. Almacena el socket cliente, los threads ya iniciados y la cantidad de los mismos.
Cita:
Iniciado por dafrantu tampoco:
Código:
public void run() {
int maxClientsCount = this.maxCliente;
clientThread[] threads = this.threads;
Obtiene la cantidad de clientes en una variable y los clientes en otra (por cierto, un mal uso de variables ya que puedes acceder a los mismos directamente)
Cita:
Iniciado por dafrantu y por ultimo, en la parte del if no entiendo el this.
Código:
for (int i = 0; i < maxCliente; i++) {
if (threads[i] != null && threads[i] != this) {
threads[i].os.println( nombre+ " se ha conectado");
}
}
Avisa a todos los clientes ya iniciados que se conecto el nuevo cliente, y el
this lo utiliza en el
if para verificar que el cliente a avisar no sea el mismo que acaba de ingresar a la sala.
Suerte!