Meaningless Drivel is fun!
The moose likes Threads and Synchronization and the fly likes Canceling a TimerTask Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Java » Threads and Synchronization
Bookmark "Canceling a TimerTask" Watch "Canceling a TimerTask" New topic

Canceling a TimerTask

Jean-Michel Vilain

Joined: Aug 06, 2010
Posts: 27

Hi ranch people!
I'm into server side multithreading and I'm finding it puzzlingly amusing.
I create a Timer and use it to schedule a TimerTask via schedule(TimerTask t, int delay), i.e. this TimerTask is meant to trigger once at most.
In the case where the TimerTask gets canceled, is this safe not keeping a reference to the Timer? Because I won't be able to call stop or anything on it when the TimerTask gets canceled.
Thoughts or suggestions welcome!

Designer and developer on Faëria: Strategy Card Game ( The server is 100% Java.
@Jiem_ on Twitter (
Paul Clapham

Joined: Oct 14, 2005
Posts: 19728

The procedure to cancel a TimerTask seems pretty simple to me: you call its cancel() method. You can read the API documentation and confirm that for yourself. So I don't understand the rest of your question.
Chris Hurst
Ranch Hand

Joined: Oct 26, 2003
Posts: 438

It's safe as the timer lives on until actually removed by the scheduler (happens automatically) when cancelled so if your not worried about performance your fine . Cancelled timers can seriously mess with GC performance (consider purge), though only worry about this if your writing serious server apps and use timers a lot.

"Eagles may soar but weasels don't get sucked into jet engines" SCJP 1.6, SCWCD 1.4, SCJD 1.5,SCBCD 5
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link:
subject: Canceling a TimerTask
jQuery in Action, 3rd edition