Python多进程第二个进程未启动
你好,我想在Python中同时运行两个函数。这两个函数分别通过USB读取来自两个不同仪表的数据,它们之间没有相互依赖。我尝试过使用多进程,但第二个仪表始终无法启动。
def readMeter1():
while True:
#read Meter1
def readMeter2():
while True:
#read Meter2
if __name__ == "__main__":
Process(target = readMeter1()).start()
Process(target = readMeter2()).start()
1 个回答
2
参数 target
必须是可以调用的东西(在你的情况下就是一个函数)。你不需要自己去调用这个函数,start()
会在启动一个新进程后自动调用它:
Process(target=readMeter1).start() # fork a new process, call readMeter1
Process(target=readMeter2).start() # fork a new process, call readMeter2
因为你直接调用了 readMeter1
,这会在当前进程中启动一个无限循环,导致其他的事情都无法进行。