Prechádzať zdrojové kódy

Catch SleepKernel exception

Yentl Van Tendeloo 7 rokov pred
rodič
commit
18284b4982
1 zmenil súbory, kde vykonal 5 pridanie a 1 odobranie
  1. 5 1
      model/model.py

+ 5 - 1
model/model.py

@@ -4,6 +4,7 @@ sys.path.append("state/")
 sys.path.append("interface/HUTN")
 from modelverse_state.main import ModelverseState as MvS
 from modelverse_kernel.main import ModelverseKernel as MvK
+from modelverse_kernel.primitives import SleepKernel
 from hutn_compiler.compiler import main as do_compile
 
 #from pypdevs.DEVS import AtomicDEVS, CoupledDEVS
@@ -241,7 +242,10 @@ class ModelverseKernel(AtomicDEVS):
                     commands = None
 
             elif self.state.phase == "computation":
-                commands = self.state.mvk.execute_yields(self.state.current_task, "execute_rule", [], self.state.reply)
+                try:
+                    commands = self.state.mvk.execute_yields(self.state.current_task, "execute_rule", [], self.state.reply)
+                except SleepKernel:
+                    commands = None
             elif self.state.phase == "output":
                 commands = self.state.mvk.execute_yields(self.state.current_task, "get_output", [], self.state.reply)
             else: