Swing is thread-unsafe. But it is completely safe for you to create an
EventTableModel or EventListModel that
is updated by a non-Swing thread. This is because the
EventTableModel uses a special proxy EventList,
which receives updates from any source thread and fires them using the Swing event
dispatch thread. To create such a proxy EventList, use the
factory method GlazedListsSwing.swingThreadProxyList(EventList).
If your code must access the EventTableModel or
other Swing classes, it should do so only on the Swing event dispatch thread. This is
easy with the SwingUtilities.invokeLater()
method.