Answer Posted / vivek ghavle
The Object class has three methods, wait(), notify(), and
notifyAll() that help threads
Communicate.
Suppose a mail processor thread has to keep checking if
there is any mail to process.
For example,
if one thread is a mail-delivery thread and one thread is a
mail-processor thread,
the mail-processor thread has to keep checking to see if
there's any mail to process.
Using the wait and notify mechanism, the mail-processor
thread could check for
mail, and if it doesn't find any it can say, "Hey, I'm not
going to waste my time
checking for mail every two seconds. I'm going to go hang
out, and when the mail
deliverer puts something in the mailbox, have him notify me
so I can go back to
runnable and do some work."
In other words, using wait() and notify() lets one thread
put itself into a "waiting room" until some other thread
notifies it that there's a reason to come back out.
wait(), notify(), and notifyAll() must be called from within
a synchronized
context! A thread can't invoke a wait or notify method on an
object unless it owns
that object's lock.
| Is This Answer Correct ? | 3 Yes | 1 No |
Post New Answer View All Answers
What are various types of class loaders used by jvm?
How to determine SGA site?
What is clustering? What are the different algorithms used for clustering?
Which javutil classes and interfaces support event handling?
What is ioc concept?
What event results from the clicking of a button?
What is a policy?
What value does read() return when it has reached the end of a file?
Can I use multiple html form elements with the same name?
Do I have to use jsps with my application?
What are the purpose of introspection?
What class is the top of the awt event hierarchy?
Do I need to import javlang package any time? Why ?
What is a session? Can you share a session object between different theads?
Can I import same package/class twice? Will the jvm load the package twice at runtime?