Ver Mensaje Individual
  #3 (permalink)  
Antiguo 30/07/2009, 07:28
Erume
 
Fecha de Ingreso: marzo-2006
Mensajes: 106
Antigüedad: 18 años, 10 meses
Puntos: 0
Respuesta: Terminación Thread

Y un problema más...

Vereis, como dije antes, tengo un hilo que rescata información vía HTTP de un servidor. La aplicación principal (que es un MIDlet) llama al Thread para que le devuelva los valores que ha recuperado y procesarlos.

El problema es que cuando llamo a los métodos que devuelven los valores del Thread, estos métodos devuelven los valores que se adquirieron en el constructor. Sin embargo, cuando imprimo los valores de los atributos desde el Thread, se escriben los valores correctos.
Me explico mejor mostrando un trozo de código.



Código:
public class CogeValores extends Thread {
            
            private String valor;

            public CogeValores(){
                      valor = null;
  
           }

            public void run(){
                //Aqui realizamos todas las conexiones HTTP y el atributo valor adquiere
                //su nuevo contenido
                System.out.println(valor); //En la consola me muestra el valor que le
                                                         //le corresponde
                }

              public String getValor(){
                       return valor;
              }

}


public class Main extends MIDlet {

             //Y en cierto momento necesito hacer esto

            CogeValores a = new CogeValores();
            a.start();
            System.out.println(a.getValor()); //Y aqui me sigue saliendo null, tras haber
                                                                //ejecutado el thread



}
¿Se me está escapando algo?. ¿Como recupero los datos adquiridos por el Thread entonces?.

¡Un saludo!.
__________________
"El río más profundo siempre es el más silencioso"