Does JVM clean up after a scheduled thread has finished its task?

If a Timer class is scheduled to perform a certain task repeatedly, and when a scheduled task is finished, who will clean up or terminate or stop that thread? Is there anything that I can do to make sure those finished threads are cleaned up so that they will not occupy resources.
[288 byte] By [tom_chanskya] at [2007-11-26 18:20:59]
# 1
See the Javadoc:'Corresponding to each <tt>Timer</tt> object is a single background thread that is used to execute all of the timer's tasks, sequentially.'So there is only one Thread. So there's nothing to worry about.
ejpa at 2007-7-9 5:54:49 > top of Java-index,Core,Core APIs...
# 2

Further for java.util.Timer, at least in Java 6:

"After the last live reference to a Timer object goes away and all outstanding tasks have completed execution, the timer's task execution thread terminates gracefully (and becomes subject to garbage collection). However, this can take arbitrarily long to occur. By default, the task execution thread does not run as a daemon thread, so it is capable of keeping an application from terminating. If a caller wants to terminate a timer's task execution thread rapidly, the caller should invoke the timer's cancel method."

Not sure if this self-cleanup goes back to 1.4 though.

davidholmesa at 2007-7-9 5:54:49 > top of Java-index,Core,Core APIs...