【发布时间】:2011-09-19 22:24:17
【问题描述】:
我的 Python 应用程序 (v2.7) 中有一个“while”循环,它基本上与蓝牙 GPS 设备通信,只要有数据被接收,循环就会继续。本质上,while 循环是这样的:-
> data = ""
>
> if data == None:
> print "Connection Failed" else:
> print "Connection Established"
>
> while True:
> data = socket.recv(1024)
现在我想做的是让这个 while 循环在程序的整个生命周期中持续运行,直到蓝牙设备关闭,这反过来又会结束循环,因为不会接收到数据。尽管如此,随着这个 while 循环的继续,我想转到另一个解析数据的方法。
如何让循环继续运行并继续执行下一个命令?需要穿线吗?我是线程概念的新手,所以请耐心等待:)
谢谢
【问题讨论】:
-
根据从设备读取的延迟要求,您可能可以将生成器用作coroutine,而不是线程/多处理。
标签: python loops while-loop python-multithreading