¿Cómo puedo crear un hilo de fondo "controlado por eventos" en Java?

Me gusta la simplicidad deinvokeLater() para enviar unidades de trabajo al AWT EDT. Sería bueno tener un mecanismo similar para enviar solicitudes de trabajo a un subproceso en segundo plano (como SwingWorker), pero según tengo entendido, estos no tienen ningún tipo de mecanismo de envío y espera de eventos, de eso depende invokeLater (). @

Así que, en cambio, terminé dando a mi hilo de fondo una cola de bloqueo, a la que otros hilos envían mensajes, y el hilo esencialmente ejecuta un ciclo de recepción, bloqueando hasta que llega un mensaje.

De hecho, eso podría ser exactamente cómo se implementaría un comportamiento similar a EDT en un hilo de fondo (¿o no?). Por otro lado, me gusta la simplicidad de un hilo que simplemente cuelga allí inerte, procesando "gotas de trabajo" cada vez que se envían desde una Cola de Despacho de Evento invisible en el cielo. ¿Java proporciona una manera de crear un "subproceso de trabajo controlado por eventos"? ¿O, después de todo, la cola de mensajes es la forma correcta de hacer esto? Y en una línea relacionada, ¿hay inconvenientes para lainvokeLater() técnica de pasar mensajes?

Respuestas a la pregunta(2)

Su respuesta a la pregunta