Example #1
0
 def __init__(self):
     self.serverThread = {}
     try:
         serverThread = ServerThread()
         serverThread.start()
         self.serverThread[0] = serverThread
     except:
         logger.log(logger.ERROR, "Failed to start server thread")
Example #2
0
    def run(self):
        self.init_logger()

        # Join the MPS Network
        logger.log(logger.INFO, "Starting MPS")
        if not mpsClient.start(self.name, self.params.tcp_port):
            raise SystemExit

        app = StcL1Application()
        # Force garbage collection post-initialization
        gc.collect()

        # Signal successful daemon startup
        self.signal_startup()
        logger.log(logger.INFO, "Signaled startup, entering main loop")

        # This is the main loop of the daemon -- it runs forever or until we interrupt the daemon (when running interactively)
        while True:
            try:
                mpsClient.run()
            except KeyboardInterrupt:
                break
            except:
                traceback.print_exc()

        # Shutdown MPS
        logger.log(logger.INFO, "Stopping MPS")
        app.stop()
        mpsClient.stop()
Example #3
0
 def stop(self):
     logger.log(logger.Info, "Stopping server thread")
     for thread in self.serverThread:
         thread.exit()