/rev/3e1043e38221
changeset: 1256:3e1043e38221
user:      Marcel Keller <[email protected]>
date:      Tue Sep 29 12:57:20 2009 +0200
summary:   Fork program counter for every preprocessing operation und generator 
call.

diffstat:

 viff/runtime.py |  6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diffs (26 lines):

diff -r 8063a78b8ef5 -r 3e1043e38221 viff/runtime.py
--- a/viff/runtime.py   Mon Sep 28 18:36:21 2009 +0200
+++ b/viff/runtime.py   Tue Sep 29 12:57:20 2009 +0200
@@ -767,16 +767,22 @@
         wait_list = []
         for ((generator, args), program_counters) in program.iteritems():
             print "Preprocessing %s (%d items)" % (generator, 
len(program_counters))
+            self.increment_pc()
+            self.fork_pc()
             func = getattr(self, generator)
             results = []
             items = 0
             while items < len(program_counters):
+                self.increment_pc()
+                self.fork_pc()
                 item_count, result = func(*args)
                 items += item_count
                 results.append(result)
+                self.unfork_pc()
             ready = gatherResults(results)
             ready.addCallback(update, program_counters)
             wait_list.append(ready)
+            self.unfork_pc()
         return DeferredList(wait_list)
 
     def input(self, inputters, field, number=None):
_______________________________________________
viff-commits mailing list
[email protected]
http://lists.viff.dk/listinfo.cgi/viff-commits-viff.dk

Reply via email to