|
From: <ha...@us...> - 2008-04-22 13:57:30
|
Revision: 1965
http://cogkit.svn.sourceforge.net/cogkit/?rev=1965&view=rev
Author: hategan
Date: 2008-04-22 06:57:26 -0700 (Tue, 22 Apr 2008)
Log Message:
-----------
added take() method
Modified Paths:
--------------
trunk/current/src/cog/modules/karajan/src/org/globus/cog/karajan/util/Queue.java
Modified: trunk/current/src/cog/modules/karajan/src/org/globus/cog/karajan/util/Queue.java
===================================================================
--- trunk/current/src/cog/modules/karajan/src/org/globus/cog/karajan/util/Queue.java 2008-04-22 03:22:39 UTC (rev 1964)
+++ trunk/current/src/cog/modules/karajan/src/org/globus/cog/karajan/util/Queue.java 2008-04-22 13:57:26 UTC (rev 1965)
@@ -22,14 +22,23 @@
head.prev.next = e;
head.prev = e;
size++;
+ notifyAll();
}
public synchronized Object dequeue() {
Object o = head.next.obj;
head.next.next.prev = head;
head.next = head.next.next;
+ size--;
return o;
}
+
+ public synchronized Object take() throws InterruptedException {
+ while (size == 0) {
+ wait();
+ }
+ return dequeue();
+ }
public boolean isEmpty() {
return size == 0;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|