Author: toad
Date: 2007-03-21 22:26:46 +0000 (Wed, 21 Mar 2007)
New Revision: 12260

Modified:
   trunk/freenet/src/freenet/node/RequestStarter.java
Log:
comments

Modified: trunk/freenet/src/freenet/node/RequestStarter.java
===================================================================
--- trunk/freenet/src/freenet/node/RequestStarter.java  2007-03-21 22:23:30 UTC 
(rev 12259)
+++ trunk/freenet/src/freenet/node/RequestStarter.java  2007-03-21 22:26:46 UTC 
(rev 12260)
@@ -126,12 +126,13 @@
                                return;
                        } else {
                                if(logMINOR) Logger.minor(this, "Waiting...");  
                        
-                               // Always take the lock on RequestStarter first.
+                               // Always take the lock on RequestStarter 
first. AFAICS we don't synchronize on RequestStarter anywhere else.
+                               // Nested locks here prevent extra latency when 
there is a race, and therefore allow us to sleep indefinitely
                                synchronized(this) {
                                        req = sched.removeFirst();
                                        if(req != null) continue;
                                        try {
-                                               wait(1000*1000);
+                                               wait(100*1000); // as close to 
indefinite as I'm comfortable with! Toad
                                        } catch (InterruptedException e) {
                                                // Ignore
                                        }


Reply via email to