removeIdentical: ifAbsent:
authorpenk
Thu, 25 Nov 2004 10:42:48 +0100
changeset 1498 681b0afc046c
parent 1497 5db4d4288c2c
child 1499 1ff98f9bc58f
removeIdentical: ifAbsent:
SharedQueue.st
--- a/SharedQueue.st	Wed Nov 24 10:31:46 2004 +0100
+++ b/SharedQueue.st	Thu Nov 25 10:42:48 2004 +0100
@@ -111,6 +111,15 @@
 
 !SharedQueue methodsFor:'accessing'!
 
+do:anObject
+    "evaluate the argument, aBlock for each element in the queue"
+
+    accessLock critical:[
+        super do:anObject.
+    ].
+    ^ anObject.
+!
+
 next
     "return the next value in the queue; if it its empty, wait 'til
      something is put into the receiver.
@@ -199,6 +208,7 @@
     noSuchElement ifTrue:[
         ^ exceptionalValue value.
     ].
+    spaceAvailable signal.
     ^ value.
 !
 
@@ -267,5 +277,5 @@
 !SharedQueue class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic2/SharedQueue.st,v 1.28 2004-11-19 10:04:55 penk Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic2/SharedQueue.st,v 1.29 2004-11-25 09:42:48 penk Exp $'
 ! !