MacOS 10.7.3,python 2.5Python pyserial和失控的CPU使用率
我正在使用pyserial打开到外部服务器的连接。打开连接为:
HOST = '10.0.0.1'
PORT = '16010'
theURL = 'socket://' + HOST + ':' + PORT
conn = serial.serial_for_url(theURL, baudrate=115200)
conn.timeout = 2
,然后读看起来是这样的:
try:
while len(rawData) == 0 and self.shutdown == False:
rawData = conn.readline()
except:
some error handling code...
的问题是,如果我在10.0.0.1:16010代码保持运行杀死服务器,但CPU使用率达到100%。没有错误被抛出,所以除了从不输入。
这看起来像是pyserial中的一个问题,但也许有人在这里遇到过这种情况,并且知道如何检测丢失的连接,以便可以正常处理情况。
谢谢。
的Readline是希望该应用,因为进入的记录是不同的长度,但都\ n终止。如果要纠正错误的唯一方法是一次读取字符并以这种方式构建字符串,我想它可以工作......但这似乎是不必要的工作。但是,问题是没有引发异常,所以错误捕获不起作用。 – user1200376 2012-02-09 20:14:29