This week's book giveaway is in the Mac OS forum. We're giving away four copies of a choice of "Take Control of Upgrading to Yosemite" or "Take Control of Automating Your Mac" and have Joe Kissell on-line! See this thread for details.
Assuming this is in Swing, you cannot reliably update a Swing GUI from outside the UI thread, no matter how many other threads you use. Perhaps you need to put it into something run by java.awt.EventQueue.invokeLater() ?