runtime/PLCObject.py
changeset 1983 edd7a3a06d86
parent 1956 2b90514edfbf
child 1984 081265cda5b1
equal deleted inserted replaced
1982:092d98d56995 1983:edd7a3a06d86
   395                 self.TraceThread.join()
   395                 self.TraceThread.join()
   396                 self.TraceThread = None
   396                 self.TraceThread = None
   397             return True
   397             return True
   398         return False
   398         return False
   399 
   399 
   400     def _Reload(self):
       
   401         self.daemon.shutdown(True)
       
   402         self.daemon.sock.close()
       
   403         os.execv(sys.executable, [sys.executable]+sys.argv[:])
       
   404         # never reached
       
   405         return 0
       
   406 
       
   407     def ForceReload(self):
       
   408         # respawn python interpreter
       
   409         Timer(0.1, self._Reload).start()
       
   410         return True
       
   411 
       
   412     def GetPLCstatus(self):
   400     def GetPLCstatus(self):
   413         return self.PLCStatus, map(self.GetLogCount, xrange(LogLevelsCount))
   401         return self.PLCStatus, map(self.GetLogCount, xrange(LogLevelsCount))
   414 
   402 
   415     def NewPLC(self, md5sum, data, extrafiles):
   403     def NewPLC(self, md5sum, data, extrafiles):
   416         if self.PLCStatus in ["Stopped", "Empty", "Broken"]:
   404         if self.PLCStatus in ["Stopped", "Empty", "Broken"]: