【发布时间】:2011-08-16 00:58:40
【问题描述】:
我制作了一些 python 脚本并在我的计算机和一些远程 shell(一些提供 shell 访问的网站)上运行它。
我使用线程、管道和 UDP 套接字以 P2P 方式传输数据,因此每个脚本都可以通过同一个套接字接收和发送。为了测试这是否可行,我在我的计算机上打开一个终端,并在连接到我的 shell 的 ssh 上打开另一个终端。我确保两台机器上的脚本相同,并为其提供一个 IP 地址。
这是脚本:http://codepad.org/V9Q1KcDT
(不知道要不要直接贴在这里)
我的问题是这样的:我发送的字符串似乎有 20% 的时间会降落,有时经常,有时不会,而且似乎是随机的......
我做错了什么? UDP有那么不可靠吗? python线程+管道+套接字太慢了吗? 会不会是我的 shell 提供商的某种网络问题? 我的程序有缺陷吗? 管道是与线程通信的好解决方案吗?
我没有使用 shell 没有问题,我没有尝试过,但它对于测试目的很有用。
顺便说一句,如果我是路由器,如果我不是唯一连接的计算机,路由器如何知道将数据包发送到哪里? (当我是唯一的人时我尝试过,它的行为相同)。
【问题讨论】:
标签: python multithreading network-programming pipe