Ver Mensaje Individual
  #3 (permalink)  
Antiguo 25/10/2009, 10:23
Avatar de lobo_php
lobo_php
 
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años, 1 mes
Puntos: 75
Respuesta: Array de Threads

ummm, pero, mira, lo que tengo es esto:

Código java:
Ver original
  1. while(resultado.next()) {
  2.                 cencos = resultado.getString(1);
  3.                 dirip = resultado.getString(2).replaceAll(" ","");
  4.                 dirip = dirip.trim();
  5.                 new mithread(dirip,user,password,i).start();
  6.                 i++;
  7. }
  8. System.out.println("------TERMINO EL WHILE------");
  9. consolidar(ruta_destino,cencos,formateador.format(fecha));

en mithread hago una conexion al ftp, pero ese while es sobre una consulta de ips en la base de datos, y bueno, con datos exactos son 121 direcciones IP, cuando entro al mithread pongo esto:

Código java:
Ver original
  1. public void run(){
  2.         System.out.println("Empezo el thread "+i);
  3.         try {
  4.             FTP client = new FTP(server, user, pass);
  5.             client.cd("/");
  6.             client.setDataTransferType(FTP.BINARY);
  7.             System.out.println("Se conectó el thread "+i);
  8.             client.disconnect();
  9.         }
  10.         catch(Exception con){
  11.             System.out.println("NO se conectó el thread "+i);
  12.         }
  13.         System.out.println("Terminó el thread "+i+"\n");
  14.     }

entonces me muestra algo mas o menos asi:

Código:
Empezo el thread 1
Empezo el thread 2
Empezo el thread 3
Empezo el thread 4
Empezo el thread 5
Se conectó el thread 1
Se conectó el thread 2
Empezo el thread 5 6
....
....
Empezo el thread 121
------TERMINO EL WHILE------
Se conectó el thread 68
Se conectó el thread 73
...
...
entonces, cuando aparece "TERMINO EL WHILE" empieza a hacer lo que hay en el metodo "consolidar", pero aún no han terminado de ejecutarse COMPLETAMENTE los threads, empiezan, pero no terminan, y lo que necesito es que terminen, por que, aunque aun no está implementado, necesito descargar vía FTP unos archivos de cada servidor, y al momento de consolidar muchos servidores nisiquiera se han conectado, y se van a consolidar son los archivos que se descargan.

entonces necesito que consolidar se ejecute cuando ya mithread en su totalidad haya terminado, todos los 121 servidores ftp.

alguna ayuda?

la verdad no se y he buscado pero no encuentro nada que me ayude.


saludos.
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175