Python 3.x Python线程化EXE应用程序

Python 3.x Python线程化EXE应用程序,python-3.x,python-multithreading,Python 3.x,Python Multithreading,首先,感谢您在我的帖子中来访。我是一名业余Python作家,我有一个关于线程的问题 我正在编写一个应用程序,它应该执行一个外部的“exe”文件,然后10秒钟后,打开电源开关将允许“exe”应用程序完成应用程序的执行 但是,每次我执行“exe应用程序”时,Python都会等待应用程序执行,这是永远不会发生的,因为它需要打开电源才能完成任务 请看下面我的代码: PS = serial.Serial('COM1', 9600, timeout=.1) PS.write(b"SYST:REM;

首先,感谢您在我的帖子中来访。我是一名业余Python作家,我有一个关于线程的问题

我正在编写一个应用程序,它应该执行一个外部的“exe”文件,然后10秒钟后,打开电源开关将允许“exe”应用程序完成应用程序的执行

但是,每次我执行“exe应用程序”时,Python都会等待应用程序执行,这是永远不会发生的,因为它需要打开电源才能完成任务

请看下面我的代码:

PS = serial.Serial('COM1', 9600, timeout=.1)
PS.write(b"SYST:REM; OUTP OFF; VOLT 0.0000; CURR 0.00000; OUTP OFF \n")
PS.write(b"VOLT 24.0000; CURR 1.50000; OUTP OFF \n ")
PS.write(b"MEAS:VOLT:DC? \n")
measure = PS.readline()
voltage = float(measure)
PS.write(b"MEAS:CURR? \n")
measure = PS.readline()
current = float(measure)
print("UUT Voltage - Current" + str(voltage) + str(current))


output = subprocess.check_output("aplication.exe -f -baud 500k", stderr=subprocess.STDOUT, shell=True) 
time.sleep(10)
PS.write(b"SYST:REM; OUTP OFF; VOLT 24.000; CURR 1.50000; OUTP ON \n")
PS.write(b"MEAS:VOLT:DC? \n")
measure = PS.readline()
voltage = float(measure)
PS.write(b"MEAS:CURR? \n")
measure = PS.readline()
current = float(measure)
print("UUT Voltage - Current" + str(voltage) + str(current))
print (output)
check_输出
(以及所有方便的
子流程
API)总是阻塞。如果希望进程在后台运行,则需要直接使用
Popen
(或者从线程使用方便的API,但这是毫无意义的)。