使用socketserver聊天程序,如何使客户端“永远倾听”?

时间:2016-04-04 16:15:47

标签: python tcp socketserver

在使用socketserver和TCP之前,我的聊天客户端会这样听:

def recvData(self):
    try:
        while True:
            data = self.sock.recv(1024)
            if data:
                data_handler(data)
    except:
        pass

while running:
    dt = clock.tick(60)
    client.recvData()

当客户端的服务器使用TCP套接字服务器时,如何为客户端模拟此行为?

编辑这是我的(差)尝试:

    def recvData(self):
        recvsock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        recvsock.connect(("192.168.0.7", 1234))
        recvsock.setblocking(0)
        while True:
            data = recvsock.recv(1024)
            if data:
                print(data)
                data_handler(data)

我得到了:

BlockingIOError: [WinError 10035] A non-blocking socket operation could not be completed immediately

0 个答案:

没有答案