本帖最后由 allankliu 于 2016-4-20 15:44 编辑
@nmg 老大。别这样。我在和大家一起学习。
Python thread就有局限,upython就更加受限制了。但upython unix分支不知道是否有threading。
【更新:查过了,threading是个dummy。但是有multiprocessing, asyncore......】
MCU版本的micropython应用还是推荐使用while循环,加上中断ISR callback。就像我们用在裸机上运行C代码一样的模式。
另外,micropython文档中4.2节标准库中提到了select, poll方法。但都是没有给出例子。
4.2.1 select,等待数据流事件发生
该模块提供函数用于等待数据流事件(选择可以操作的)。
Pyboard specifics(只限于PyBoard)
Polling轮询是在多个对象中等待读写操作的有效方式。当前支持的对象有:pyb.UART,pyb.USB_VCP。
函数
select.poll()
select.select(rlist,wlist,xlist[,timeout]),该函数效率不高,推荐使用Poll类。
class Poll
poll.register(obj[,eventmask])
poll.unregsiter(obj)
poll.modify(obj,eventmask)
poll.poll([timeout])
|