关闭并重新打开python中的套接字?

时间:2019-06-21 19:25:33

标签: python tcp

我有根据某些命令执行特定操作的硬件(可以通过串行,TCP或其GUI给出) _ 我写了一个简单的python TCP脚本(我的笔记本电脑是客户端,硬件充当服务器),它打开一个套接字,发送数据,然后过一段时间,关闭套接字。 但是现在,如果我再次打开插座(关闭后),它不会打开插座,并向我抛出错误消息(无法打开插座)。

硬件手册说:“您必须使用与打开的插座相同的插座”

我要做的是从网络交换机上断开以太网线,然后重新运行脚本,它便可以正常工作

有什么办法(明智地编程),这样我就不需要物理断开连接并重新连接电线,而是刷新其状态或某种方式

谢谢 贾尼

def __init__(self, ip, port=1232):
        # User Settings
        self.ip = ip
        self.port = port
        self.motor_status = 0   # motor status 
        # Setup Socket1
        self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        self.sock.connect((ip, port))
        self.sock.settimeout(5)
        print('Network Connection with hardware is succesfully established')

def close(self):
    print('In close_method and stopping all motors and closing socket')
    self.sock.close()
## after some operations
tt = Motors('xx.xx.1.20', 5049)
tt.run()   # this is just sending some commands to do particular action
tt.close

# I have some bunch of code 
tt=Motors('xx.xx.1.20', 5049)  #-------> throw error 

Motors是类及其初始化和关闭方法

0 个答案:

没有答案