【发布时间】:2012-08-01 22:38:38
【问题描述】:
我在输入时使用的是 PySerial
serialObject.read()
并且执行挂起等待一些串行数据。 如何中止这个命令?我想输入新命令并忽略这个。 我在 Windows 上使用 IDLE,Ctrl+C 似乎不起作用。
【问题讨论】:
-
Ctrl-C 应该可以工作,你会得到一个
KeyboardInterrupt。较低级别的某些东西正在挂起进程,或者 PySerial 可能正在捕获我认为的异常 -
如果这是通过 Python/C API 分派到 C 代码,信号处理通常会在该过程中被丢弃。我对向 Windows 中的进程发送信号一无所知,或者我可以提供更多建议。 ;)
-
我可以通过使用
serialObject.timeout = 1完全避免这种情况,这样它就不会无限期挂起
标签: python windows python-idle pyserial