فهرست منبع

Fixed erroneous sleep, causing the Mv to severelly lag behind when
something goes wrong

Yentl Van Tendeloo 8 سال پیش
والد
کامیت
d616ce142b
1فایلهای تغییر یافته به همراه10 افزوده شده و 7 حذف شده
  1. 10 7
      hybrid_server/classes/mvkcontroller.xml

+ 10 - 7
hybrid_server/classes/mvkcontroller.xml

@@ -274,17 +274,20 @@
                                     self.tasks.add(name)
                                 self.timeout = self.all_failed
                                 self.all_failed = True
-                            #if time.time() - start > 0.1:
-                            #    print("DIFF: " + str(time.time() - start))
                         </script>
                     </onentry>
 
-                    <!-- Add after self.sccd_yield() as otherwise some tests will fail (e.g., constructors_AL which has to time out). -->
-                    <transition cond="self.outputs" after="self.sccd_yield()" target="../process_data"/>
-                    <transition cond="not self.timeout and not self.outputs" after="self.sccd_yield()" target="."/>
+                    <transition cond="self.outputs" target="../process_data"/>
+                    <transition cond="not self.timeout and not self.outputs" target="../timeout_none"/>
+                    <transition cond="self.timeout and not self.outputs" target="../timeout_long"/>
+                </state>
+
+                <state id="timeout_long">
+                    <transition after="self.sccd_yield() + 0.05" target="../execution"/>
+                </state>
 
-                    <!-- Need sccd_yield here anyway, as we really want to pause. -->
-                    <transition cond="self.timeout and not self.outputs" after="self.sccd_yield() + 0.10" target="."/>
+                <state id="timeout_none">
+                    <transition after="self.sccd_yield()" target="../execution"/>
                 </state>
 
                 <state id="process_data">