Ver Mensaje Individual
  #2 (permalink)  
Antiguo 04/11/2011, 23:48
Avatar de HackmanC
HackmanC
 
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 9 meses
Puntos: 260
Sonrisa Respuesta: Threads en Jframe

Hola,

Definiste la variable de tipo Thread,

Código Java:
Ver original
  1. private Thread thO1 = null;

El método start que definiste tiene como parámetro un objeto de tipo Thread,

Código Java:
Ver original
  1. public void start(Thread hilo) {
  2.         if (hilo == null) {
  3.             hilo = new Thread(hilo);
  4.             hilo.start();
  5.         }
  6.     }

Y le pasas la variable de tipo Thread al método start,

Código Java:
Ver original
  1. start(thO1);

¿Ahora, en que momento tiene algo que ver la interface runnable?
¿Si el objeto es de tipo Thread y creas un nuevo Thread?

Para que funcione deberías definir la variable como el tipo Runnable, donde el tipo MyRunnableType es el tipo de la clase donde está definido el método run, (eso porque mencionaste que usaste la interface Runnable -- Metodo run de la clase runnable --)

Código Java:
Ver original
  1. private MyRunnableType thO1 = null;

Y el método start debería crear un Thread con el constructor que recibe un Runnable,

Código Java:
Ver original
  1. public void start(Runnable hilo) {
  2.         if (hilo == null) {
  3.             hilo = new MyRunnableType();
  4.             Thread temp = new Thread(hilo);
  5.             temp.start();
  6.         }
  7.     }

Como lo estabas haciendo era crear un hilo vacío sin método run y ejecutándolo, por consiguiente no hacía nada, de esta forma estás haciendo un hilo con el runnable MyRunnableType.

Saludos,