1. 程式人生 > 程式設計 >python實現啟動一個外部程式,並且不阻塞當前程序

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,Pool
import 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實現啟動一個外部程式,並且不阻塞當前程序就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。