The Swing Event Dispatch Thread

Swing requires that all user interface access be performed by the event dispatch thread. You won't have to worry when you're using Glazed Lists, however. The model adapter classes automatically use a special EventList that copies your list changes to the Swing event dispatch thread. You can create instances of this proxy using the factory method GlazedListsSwing.swingThreadProxyList(EventList).

When your code accesses EventTableModel and other Swing classes it must do so only from the Swing event dispatch thread. For this you can use the SwingUtilities.invokeLater() method.