python實現啟動一個外部程序,并且不阻塞當前進程
python可以使用os模塊中的system函數來啟動外部程序。
Windows平臺下使用start命令就可以不阻塞當前進程的執行程序,測試代碼如下:
import os
os.system(’start calc’)
補充知識:Python:啟動大量子進程
我就廢話不多說了,大家還是直接看代碼吧~
#!/usr/bin/env python# coding:UTF-8 '''@version: python3.x@author:曹新健@contact: [email protected]@software: PyCharm@file: 5.啟動大量子進程.py@time: 2018/9/18 22:28''' from multiprocessing import Process,Poolimport time,os,random def run(num): print('子進程%d啟動---%s' % (num,os.getpid())) start = time.time() time.sleep(random.choice([1,2,3])) end = time.time() #print(end) print('子進程%d結束---%s---耗時%.2f' % (num, os.getpid(),end-start)) if __name__ == '__main__': print('父進程啟動') #創建進程池,Pool默認為CPU核心數 pp = Pool() for i in range(8): #創建進程,放入進程池統一管理 result = pp.apply_async(run,args=(i,)) #進程池在調動join之前必須先調動close,調用close之后就不能再繼續添加新的進程了 pp.close() pp.join() print('父進程結束')
以上這篇python實現啟動一個外部程序,并且不阻塞當前進程就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。
