I know about the Swing components and that they should be called from the event dispatch thread but as of now i developed test applications which are event thread centric, that means the UI does the program flow definition by calling listeners on event invocation. But i have read that other threads should not communicate with the UI because it is not synchronized.
Most books just teach how to use individual components and not how to to use them in a real world application context.
How does one update status of a completed or in process thread status to a swing component.
UPDATE: If we configure the listener to invoke the job in an ExecutorService
how does the working thread update the UI component in a safe manner.