Ver Mensaje Individual
  #4 (permalink)  
Antiguo 05/05/2008, 14:24
Avatar de jrw
jrw
 
Fecha de Ingreso: enero-2003
Ubicación: Barcelona
Mensajes: 46
Antigüedad: 21 años, 3 meses
Puntos: 0
Re: Threads y eclipse

Hola,

Me hubiese gustado que mostrases mas código.

Yo no entiendo mucho, pero en principio el problema que tienes me imagino que viene por el hecho de estás ejecutando este código en el thread que despacha los eventos. Y claro, cambiar el texto dispara un evento que se pone en la cola y hasta que no se acaba el proceso actual no se ejecuta.

El thread de despacho de eventos es el thead que ejecuta el código de dibujo y de despacho de eventos. Por ejemplo los métodos paint y actionPerformed se ejecutan automáticamente en el thread de despacho de eventos.

Si necesitamos acceder al UI desde fuera del código del despachador de eventos o de dibujo, podemos usar los métodos invokeLater o invokeAndWait.

La clase SwingUtilities proporciona dos métodos para ayudarnos a ejecutar código en el thread de despacho de eventos.

invokeLater:

Pide que algún código se ejecute en el thread de despacho de eventos. Este método retorna inmediatamente, sin esperar a que el código sea ejecutado.

invokeAndWait:

Actúa igual que invokeLater, excepto en que este método espera a que el código se ejecute. Como regla, deberíamos usar invokeLater en vez de este método.