Update of /cvsroot/freenet/freenet/src/freenet/support
In directory sc8-pr-cvs1:/tmp/cvs-serv20709/src/freenet/support
Modified Files:
BlockingQueue.java
Log Message:
6222: some major bugfixes, and logging. Probably introduces some major bugs too, but
probably not as major as the ones it eliminates. Will work more on this tomorrow!
Index: BlockingQueue.java
===================================================================
RCS file: /cvsroot/freenet/freenet/src/freenet/support/BlockingQueue.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -u -r1.15 -r1.16
--- BlockingQueue.java 5 Aug 2003 00:28:32 -0000 1.15
+++ BlockingQueue.java 7 Oct 2003 00:47:30 -0000 1.16
@@ -19,7 +19,7 @@
* @author Scott G. Miller <[EMAIL PROTECTED]>
*/
public final class BlockingQueue {
- protected LinkedList queue;
+ protected final LinkedList queue;
/**
* Construct an empty BlockingQueue.
@@ -40,10 +40,17 @@
*/
public void enqueue(Object o) {
enqueuedAt = System.currentTimeMillis();
+ Core.logger.log(this, "enqueueing "+o, Logger.DEBUG);
synchronized(queue) {
+ Core.logger.log(this, "enqueueing "+o+" (locked)",
+ Logger.DEBUG);
queue.add(o);
queue.notifyAll();
+ Core.logger.log(this, "enqueued "+o+" (locked)"+
+ " to "+queue.getClass()+":"+queue, Logger.DEBUG);
}
+ Core.logger.log(this, "enqueued "+o+" (locked)",
+ Logger.DEBUG);
}
public Object dequeue() throws InterruptedException {
@@ -78,6 +85,8 @@
dequeuedCounted++;
final int timeout = 200;
while (queue.isEmpty()) {
+ Core.logger.log(this, "Waiting... "+queue.getClass()+":"+
+ queue, Logger.DEBUG);
long now = System.currentTimeMillis();
queue.wait(timeout); // wicked evil JVMs! (1.4.2 especially) - we
have seen some interesting freezes here...
long andnow = System.currentTimeMillis();
_______________________________________________
cvs mailing list
[EMAIL PROTECTED]
http://dodo.freenetproject.org/cgi-bin/mailman/listinfo/cvs