【发布时间】:2014-11-22 06:27:16
【问题描述】:
我已经尝试修复此错误 3 天,直到现在我才能解决它。 我制作了一个简单的服务器,可以处理多个客户端并且一切正常。现在我正在尝试使用代码并将其与一些 UI(使用 Tkinter)放在一起,但没有成功。
下面的代码挂在 select.select 函数上。
我猜测问题出在客户端代码中,这是客户端代码:
class OtherFrame(Tk.Toplevel, HandleScreens.HandleScreens):
def __init__(self):
print 'Classsd'
Tk.Toplevel.__init__(self)
self.root = self
self.root.geometry('800x450+350+150')
self.root["bg"] = "#3498db"
self.root.title('My Project')
self.protocol('WM_DELETE_WINDOW', self.doSomething)
client_socket = socket.socket()
port = 3548
host = '0.0.0.0'
client_socket.connect((host, port))
print 'Connected to the server'
while True:
sockets_list = [sys.stdin, client_socket]
rlist, wlist, xlist = select.select(sockets_list, [], [])
for curr_sock in rlist:
if curr_sock == client_socket:
data = curr_sock.recv(1024)
if not data:
print '\nDisconnected from server'
sys.exit()
else:
pass
else:
client_data = ''
client_socket.send(client_data)
此代码只是挂起。它什么都不做。我希望有人知道我需要改变什么。
非常感谢,对不起我的英语不好。
【问题讨论】: