Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python:TCP数据包队列积压_Python_Sockets_Tcp - Fatal编程技术网

Python:TCP数据包队列积压

Python:TCP数据包队列积压,python,sockets,tcp,Python,Sockets,Tcp,我正在用Python3.3编写一个脚本,从一块硬件接收传感器值,并以一定的速率在Blender中显示它们。这是通过从我的笔记本电脑到传感器控制箱的TCP连接发生的,该控制箱充当TCP服务器,以125 Hz的频率发送传感器值 问题是,我在Blender中的场景更新设置为较低的频率(10-30Hz,即“胶片速度”),这是性能和保持动画帧速率所必需的 该脚本连接正常并接收值,但在短时间内失败并超时,似乎正在接收“滞后”数据包(即显然不是实时的数据,而是滞后的数据) 在我看来,由于发送值的速率比接收值的

我正在用Python3.3编写一个脚本,从一块硬件接收传感器值,并以一定的速率在Blender中显示它们。这是通过从我的笔记本电脑到传感器控制箱的TCP连接发生的,该控制箱充当TCP服务器,以125 Hz的频率发送传感器值

问题是,我在Blender中的场景更新设置为较低的频率(10-30Hz,即“胶片速度”),这是性能和保持动画帧速率所必需的

该脚本连接正常并接收值,但在短时间内失败并超时,似乎正在接收“滞后”数据包(即显然不是实时的数据,而是滞后的数据)

在我看来,由于发送值的速率比接收值的速率高得多,因此消息的积压越来越多,最终导致连接失败

我一直在寻找解决方案,但我对这一切都很陌生,所以不确定该去哪里寻找。非常感谢您的任何帮助,我可以发布示例代码,尽管这并不是非常简单的TCP客户端示例

我的一个想法是编写一个单独的“管理器”脚本,在一个套接字上侦听125Hz的传入值,并更新一组全局值,另一个进程将通过另一个套接字发送到我的Blender脚本,但我不知道如何确保它安全工作

Python 3.3、Blender 2.69、Windows 7 64位