The moose likes Developer Certification (SCJD/OCMJD) and the fly likes sync.wait(); Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Certification » Developer Certification (SCJD/OCMJD)
Bookmark "sync.wait();" Watch "sync.wait();" New topic


Charles Dupin
Ranch Hand

Joined: Oct 18, 2002
Posts: 94
In most RMI server code examples there are these lines of codes at the end of the server constructor. What is the purpose of them.
Even without them a server works perfectly.

// wait for invocations from clients
Object sync = new Object();
synchronized (sync) {

Kind regards

Charles.<br />(SCJD2)
Peter den Haan
Ranch Hand

Joined: Apr 20, 2000
Posts: 3252
The only thing I can think of is that it's there to keep a non-daemon thread alive. If the main() thread would simply exit, the entire JVM would exit because the threads used internally by RMI are all daemon threads.
- Peter
I agree. Here's the link:
subject: sync.wait();
It's not a secret anymore!