1

在我的python代码中,我想从串口读取数据并通过键盘从用户那里获取输入。来自串口和键盘的数据可以随时出现并且彼此独立。我开始制作两个输入的两个线程。

import thread

def serialread():
 while 1:
  while(is.Waiting>0)
   out+=ser.read()
  print out
# now do something with the input 'out'

def keyboard():
 while 1:
  print(raw_input("Enter a Command"))
#now do something with the keyboard input

thread.start_new_thread(serialread,())
thread.start_new_thread(keyboard, ())

当我运行上面的代码时,终端在进入下一次迭代之前等待键盘输入和串行读取,但我希望当有串行读取时,只有那个线程应该工作,只要有键盘输入那么相应的线程应该可以工作,它不应该等待两个输入,然后才进入下一次迭代。

这可能吗?我应该使用线程模块吗?

4

0 回答 0