The problem is the firstProducer.join
. As stated in the javadoc
Waits for this thread to die.
So you are blocking the Event Dispatch Thread until your other Thread
is finished, hence the panel cannot be repainted nor revalidated and you will not see your changes in the UI.
Consult the Swing concurrency tutorial for more information