繁体   English   中英

Python服务器客户端通信

[英]Python server client communication

我有一个客户端和一个服务器进行如下通信:

# server

running = 1 

    while running:
        data = self.client.recv(self.size) 
        self.client.send(str(self.vel)) 

# client

def runit(self):

    self.s.send('test') 
    data = float(self.s.recv(self.size))
    self.master_.after(5,self.runit)

因此,两者都处于无限循环中,尽管这确实可以传输数据,但对我的应用程序而言效率很低。 我正在做一个游戏,我希望服务器在特定实例下将数据发送到客户端,并且我也希望客户端在该实例上接收该数据。 类似于回调的方法将起作用。 不幸的是,我找不到适合自己需要的东西。

首先,我看不到任何“低效”的东西,在这种情况下,while循环很常见,并且正如注释所述,该loop只会阻塞recv直到客户端连接为止。

因此,您的问题是如何将数据从服务器发送到客户端? 如果建立了连接(假设您正在使用TCP),则只需在该套接字上调用send()方法即可。 也许您想设置套接字SO_KEEPALIVE ,请参阅如何使用python脚本更改tcp keepalive计时器?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM