コード例 #1
0
ファイル: tcp.py プロジェクト: nguyenad92/piman
    def start(self):
        """
        This function starts the control and file socket by creating one thread for each
        """
        try:
            self.tcp_socket = socket(AF_INET, SOCK_STREAM)
            self.tcp_socket.bind((self.connection_address, self.tcp_port))
            self.tcp_socket.listen()

            self.tcp_file_socket = socket(AF_INET, SOCK_STREAM)
            self.tcp_file_socket.bind((self.connection_address, 4444))
            self.tcp_file_socket.listen()

            tcp_thread = Thread(target=self.tcp_server_start,
                                name="tcp_thread")
            self.threads.append(tcp_thread)
            tcp_thread.start()

            tcp_file_thread = Thread(target=self.tcp_file_start,
                                     name="tcp_file_thread")
            self.threads.append(tcp_file_thread)
            tcp_file_thread.start()

        except KeyboardInterrupt:
            logger.exception("keyboard interrupt")
            self.tcp_socket.close()
            self.tcp_file_socket.close()
コード例 #2
0
 def run(self):
     while not self.closed:
         try:
             self.update(1)
         except KeyboardInterrupt:
             logger.exception("keyboard interrupt")
             break
         except:
             logger.error(traceback.print_exc())
             traceback.print_exc()
コード例 #3
0
ファイル: tcp.py プロジェクト: nguyenad92/piman
 def tcp_file_start(self):
     """
     This function serves the file socket. The thread will call this function.
     """
     try:
         while True:
             (client_socket, client_addr) = self.tcp_file_socket.accept()
             tcp_file_thread = Thread(target=self.__transfer_file,
                                      args=[client_socket],
                                      name="tcp_client_file_thread")
             self.threads.append(tcp_file_thread)
             tcp_file_thread.start()
     except KeyboardInterrupt:
         logger.exception("keyboard interrupt")
         self.tcp_file_socket.close()
コード例 #4
0
ファイル: tcp.py プロジェクト: nguyenad92/piman
 def tcp_server_start(self):
     """
     This function serves the control socket. The thread will call this function.
     """
     try:
         while True:
             (client_socket, client_addr) = self.tcp_socket.accept()
             tcp_thread = Thread(target=self.__process_requests,
                                 args=[client_socket, client_addr],
                                 name="tcp_client_thread")
             self.threads.append(tcp_thread)
             tcp_thread.start()
     except KeyboardInterrupt:
         logger.exception("keyboard interrupt")
         self.tcp_socket.close()