Python套接字客户端无法重新连接

时间:2012-10-21 23:27:49

标签: python sockets

我有两个按钮。连接和断开连接。当第一次按下连接时,客户端成功连接到服务器(localhost:4106),当按下disconnect时,客户端断开连接。 我的问题是,当我再次按“连接”时,客户端将不会重新连接到服务器,我收到一条错误消息:http://i.imgur.com/dkvos.png

我认为这是因为无法重新使用套接字连接?这有解决方法吗?感谢

#!/usr/bin/python          

import socket               
import Tkinter
import tkMessageBox

top = Tkinter.Tk()

s = socket.socket()       
host = '127.0.0.1' 
port = 4106              

def connect():
    s.connect((host, port))

def disconnect():
    s.close()

ConnectBtn = Tkinter.Button(top, text ="Connect", command = connect)

DisconnectBtn = Tkinter.Button(top, text ="Disconnect", command = disconnect)

ConnectBtn.pack()
DisconnectBtn.pack()

top.mainloop()

1 个答案:

答案 0 :(得分:-1)

我不知道如何在python中重写这段代码tcl / tk,但对于解决方案来说这是一个很好的开端。 Here is the code shared by Scott Nichols。此代码显示了如果连接丢失,客户端将如何自动重新连接到服务器。

我成功使用此代码自动重新连接到服务器:

SELECT MAX(login_time)
    FROM tblname
    WHERE emp_code=123 AND 
         login_time NOT IN
           (SELECT MAX(login_time)
            FROM tblname
            WHERE emp_code=123
           )