[Swift-commit] r5824 - trunk/src/org/griphyn/vdl/karajan

hategan at ci.uchicago.edu hategan at ci.uchicago.edu
Wed Jul 11 15:35:21 CDT 2012


Author: hategan
Date: 2012-07-11 15:35:21 -0500 (Wed, 11 Jul 2012)
New Revision: 5824

Modified:
   trunk/src/org/griphyn/vdl/karajan/ArrayIndexFutureList.java
Log:
fix potential deadlock

Modified: trunk/src/org/griphyn/vdl/karajan/ArrayIndexFutureList.java
===================================================================
--- trunk/src/org/griphyn/vdl/karajan/ArrayIndexFutureList.java	2012-07-08 00:35:40 UTC (rev 5823)
+++ trunk/src/org/griphyn/vdl/karajan/ArrayIndexFutureList.java	2012-07-11 20:35:21 UTC (rev 5824)
@@ -28,6 +28,7 @@
 import java.util.Set;
 
 import org.globus.cog.karajan.stack.VariableStack;
+import org.globus.cog.karajan.workflow.events.EventBus;
 import org.globus.cog.karajan.workflow.events.EventTargetPair;
 import org.globus.cog.karajan.workflow.futures.FutureEvaluationException;
 import org.globus.cog.karajan.workflow.futures.FutureIterator;
@@ -133,9 +134,13 @@
             listeners = null;
         }
         
-        for (ListenerStackPair lsp : l) {
+        for (final ListenerStackPair lsp : l) {
             WaitingThreadsMonitor.removeThread(lsp.stack);
-            lsp.listener.futureModified(this, lsp.stack);
+            EventBus.post(new Runnable() {
+                public void run() {
+                    lsp.listener.futureModified(ArrayIndexFutureList.this, lsp.stack);
+                } 
+            });
         }
     }
 




More information about the Swift-commit mailing list