sleep : Java Glossary


You can put a thread to sleep for n milliseconds with code like this: This guarantees to sleep for at least n milliseconds; like Sleeping Beauty, it may sleep for considerably more if the system is busy. If the Thread awakens normally after its sleep, there will be no InterruptedException, but if some other Thread awakens it prematurely with Thread.interrupt there will be an InterruptedException.

The interrupt is often used for notifying of shutdown, in which case you should probably just rethrow the exception. It can also be used by a timeout task to notify another that its time to complete a task has expired.

You might try to remove the catch and wonder why the compiler complains. Java wants to prepare for the possibility that the sleep may be prematurely awakened by some wandering Prince Charming. It is not nearly as sure as you are that it can’t happen.

You can even put main event-processing thread to sleep, but if you do, no events will be processed; buttons will be dead.

You don’t need to implement Runnable to use sleep.

It is best to use wait/notify to coordinate threads, not have them sleep and wake up and check then sleep again. There is no guarantee Threads won’t sleep longer than you requested.

See the warning under Gotchas:Threads on why a sleeping task may never waken if somebody fiddles with the system clock setting while your thread is asleep.

This page is posted
on the web at:

Optional Replicator mirror
on local hard disk J:

Canadian Mind Products
Please the feedback from other visitors, or your own feedback about the site.
Contact Roedy. Please feel free to link to this page without explicit permission.

Your face IP:[]
You are visitor number