您好我试图在python中同时运行2个函数。两者都通过USB读取2个独立仪表的数据,并且它们不相互依赖。我尝试过多处理,但第二个仪表从未启动过。
def readMeter1():
while True:
#read Meter1
def readMeter2():
while True:
#read Meter2
if __name__ == "__main__":
Process(target = readMeter1()).start()
Process(target = readMeter2()).start()
答案 0 :(得分:2)
参数target
必须是可调用的(在您的情况下是一个函数)。您不需要自己调用该函数,start()
将在启动新进程后执行此操作:
Process(target=readMeter1).start() # fork a new process, call readMeter1
Process(target=readMeter2).start() # fork a new process, call readMeter2
因为你调用readMeter1
,它会在当前进程中启动一个无限循环并阻止其他所有循环。