Python TCP编程

标签 python networking tcp udp

我有一个 tcp 服务器和一个用 python 编写的客户端。这些程序的目的是服务器将一个接一个地发送一些数字给客户端,客户端应该在一个单独的线程中处理每个数字。 服务器遍历号码列表并将它们中的每一个发送给客户端。 作为:

for num in nums:
    client_sock.send(str(num))

客户端循环为:

while True:
    data = tcpClientSock.recv(BUFSIZE)
    thread.start_new_thread( startFunction, (data, ) )

问题是即使服务器在单独的 send() 调用中发送程序,客户端也会一次接收到它。

如何避免?在这种情况下我应该使用 UDP 而不是 TCP 吗?

最佳答案

你必须刷新发送端的套接字——为此添加一个 CR/NL(因为你要发送一个字符串)

关于Python TCP编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29974830/

相关文章:

python - 向通过 pool.map 调用的函数添加状态——如何避免酸洗错误

linux - 如何使用 awk 命令检索特定单词

mysql - 如何使用 MySQL 监控网络流量?

python - TensorFlow 的参数无效错误(形状不兼容)

Java-如何根据时间对tcp服务器中接收到的数据进行排序?

python - 检测鼠标光标是否被任何其他应用程序隐藏或可见

python - 将 Excel 行读入 Python

Java TCP重传超时

Android VpnService - 如何转发拦截的互联网流量?

python - 如何在另一个 Perl 安装中安装相同版本的模块,就像在 Python 中使用 pip 一样?