I am using javax.swing.Timer to schedule and run events. But it seems to be freezing the GUI. Just wanted to know whether these events are run on a seperate thread or whether I have to do it myself.
Thanks
"Although all Timers perform their waiting using a single, shared thread (created by the first Timer object that executes), the action event handlers for Timers execute on another thread -- the event-dispatching thread. This means that the action handlers for Timers can safely perform operations on Swing components. However, it also means that the handlers must execute quickly to keep the GUI responsive."—javax.swing.Timer
Emphasis added.
Addendum: SwingWorker
was designed for just this scenario. In particular, it offers a convenient way to offload work while periodically reporing progress on the EDT.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With