diff --git a/bindings/pyroot/JupyROOT/helpers/handlers.py b/bindings/pyroot/JupyROOT/helpers/handlers.py index dd4904dfa2cc7d0866100f6fc3b5f2236e5c32ed..635aa2ce5323cda69605979aded33f8d19742ab1 100644 --- a/bindings/pyroot/JupyROOT/helpers/handlers.py +++ b/bindings/pyroot/JupyROOT/helpers/handlers.py @@ -88,6 +88,7 @@ class Poller(Thread): self.ro_ref().is_running = False else: self.poll = False + self.ro_ref().is_running = False return class Runner(object): @@ -107,7 +108,7 @@ class Runner(object): >>> r.AsyncRun("Asynchronous");print("Synchronous");time.sleep(1) Synchronous Asynchronous - >>> r.AsyncRun("Asynchronous"); print(r.HasFinished()) + >>> r.AsyncRun("Asynchronous"); time.sleep(.2); print(r.HasFinished()) False >>> time.sleep(1) Asynchronous @@ -131,20 +132,16 @@ class Runner(object): return self.function(argument) def AsyncRun(self, argument): - self.is_running = True self.argument_queue.put(argument) def Wait(self): while self.is_running: pass def HasFinished(self): - if self.is_running: return False - return True + return False if self.is_running else True def Stop(self): - self.Wait() self.argument_queue.put(None) - self.Wait() class JupyROOTDeclarer(Runner):