runtime/Worker.py
changeset 2486 44c2a4e2b84d
parent 2467 fce6ab7ae156
child 2492 7dd551ac2fa0
--- a/runtime/Worker.py	Thu Jan 31 14:10:06 2019 +0100
+++ b/runtime/Worker.py	Fri Feb 01 14:14:13 2019 +0100
@@ -65,13 +65,15 @@
                 pass
             else:
                 raise _job.exc_info[0], _job.exc_info[1], _job.exc_info[2]
+
         while not self._finish:
             self.todo.wait()
             if self.job is not None:
                 self.job.do()
                 self.done.notify()
             else:
-                self.free.notify()
+                break
+
         self.mutex.release()
 
     def call(self, *args, **kwargs):
@@ -97,8 +99,8 @@
             self.job = _job
             self.todo.notify()
             self.done.wait()
-            _job = self.job
             self.job = None
+            self.free.notify()
             self.mutex.release()
 
         if _job.success: