我有一个多问题。 如果我在一个线程等待输入的过程中没有启动。
该类把输入到后台队列:
class InputCatcher(Thread):
def __init__(self, input_queue):
Thread.__init__(self)
self.input_queue = input_queue
def run(self):
while True:
self.input_queue.put(input()) # <<-- Without this it works!
不会启动类:
class Usb(Process):
def __init__(self, port, ctrl=Controller()):
Process.__init__(self)
self.usb_port = port
self.ctrl = ctrl
def run(self):
self.ctrl.usb_ports.append(self.usb_port)
ser = Serial(self.usb_port, 115200)
while True:
dsl = ser.readline()
self.ctrl.get_dataset_queue().put(['USBDS', dsl])
print(dsl)
从...开始:
ic = InputCatcher(self.input_queue)
ic.setDaemon(True)
ic.start()
usbs = []
for port in usb_ports():
if not port in ctrl.xbee_ports:
usbs.append(Usb(port, ctrl))
for usb in usbs:
usb.daemon = True
usb.start()