【发布时间】:2011-09-03 15:00:10
【问题描述】:
我正在 python 中进行一些套接字编程,在其中我开发了一个客户端 TCP/IP 套接字来与速度较慢的嵌入式设备进行通信。所以有时,当响应应该只有一个包时,它被分成两个包。我目前的解决方案是sleep() python 程序,等待确保我需要的所有数据都已经到达。
comSocket.send('\r')
sleep(1)
comSocket.send('\r')
comSocket.recv(128)
comSocket.send('\r\r')
comSocket.recv(256)
#sending I commands for data
comSocket.send('1I\r\r3I\r\r4I\r\r13I\r\r5I\r\r8I\r\r7I\r\r9I\r\r')
sleep(2)
#receiving data
rawData = comSocket.recv(512)
sleep(1.5)
我想知道是否有更好的方法来处理这种情况?
【问题讨论】:
-
您能具体谈谈沟通渠道吗?这是 IP 网络、串行总线还是??
-
@Mike Pennington:这是基于 IP 网络的 TCP/IP 套接字。
标签: python sockets tcp pexpect