python實(shí)現(xiàn)啟動(dòng)一個(gè)外部程序,并且不阻塞當(dāng)前進(jìn)程
python可以使用os模塊中的system函數(shù)來(lái)啟動(dòng)外部程序。
Windows平臺(tái)下使用start命令就可以不阻塞當(dāng)前進(jìn)程的執(zhí)行程序,測(cè)試代碼如下:
import os
os.system('start calc')
補(bǔ)充知識(shí):Python:?jiǎn)?dòng)大量子進(jìn)程
我就廢話不多說(shuō)了,大家還是直接看代碼吧~
#!/usr/bin/env python
# coding:UTF-8
"""
@version: python3.x
@author:曹新健
@contact: 617349013@qq.com
@software: PyCharm
@file: 5.啟動(dòng)大量子進(jìn)程.py
@time: 2018/9/18 22:28
"""
from multiprocessing import Process,Pool
import time,os,random
def run(num):
print("子進(jìn)程%d啟動(dòng)---%s" % (num,os.getpid()))
start = time.time()
time.sleep(random.choice([1,2,3]))
end = time.time()
#print(end)
print("子進(jìn)程%d結(jié)束---%s---耗時(shí)%.2f" % (num, os.getpid(),end-start))
if __name__ == "__main__":
print("父進(jìn)程啟動(dòng)")
#創(chuàng)建進(jìn)程池,Pool默認(rèn)為CPU核心數(shù)
pp = Pool()
for i in range(8):
#創(chuàng)建進(jìn)程,放入進(jìn)程池統(tǒng)一管理
result = pp.apply_async(run,args=(i,))
#進(jìn)程池在調(diào)動(dòng)join之前必須先調(diào)動(dòng)close,調(diào)用close之后就不能再繼續(xù)添加新的進(jìn)程了
pp.close()
pp.join()
print("父進(jìn)程結(jié)束")
以上這篇python實(shí)現(xiàn)啟動(dòng)一個(gè)外部程序,并且不阻塞當(dāng)前進(jìn)程就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- python實(shí)現(xiàn)多進(jìn)程并發(fā)控制Semaphore與互斥鎖LOCK
- 像線程一樣管理進(jìn)程的Python multiprocessing庫(kù)
- Python中使用subprocess庫(kù)創(chuàng)建附加進(jìn)程
- 如何用 Python 子進(jìn)程關(guān)閉 Excel 自動(dòng)化中的彈窗
- python 多進(jìn)程和多線程使用詳解
- python 實(shí)現(xiàn)多進(jìn)程日志輪轉(zhuǎn)ConcurrentLogHandler
- Python多進(jìn)程與多線程的使用場(chǎng)景詳解
- 解決Python 進(jìn)程池Pool中一些坑
- python多進(jìn)程執(zhí)行方法apply_async使用說(shuō)明
- python multiprocessing 多進(jìn)程并行計(jì)算的操作
- Python之多進(jìn)程與多線程的使用
- 如何用tempfile庫(kù)創(chuàng)建python進(jìn)程中的臨時(shí)文件
- Python Process創(chuàng)建進(jìn)程的2種方法詳解
- python3中celery異步框架簡(jiǎn)單使用+守護(hù)進(jìn)程方式啟動(dòng)
- Python 多進(jìn)程原理及實(shí)現(xiàn)
- python多線程和多進(jìn)程關(guān)系詳解
- Selenium執(zhí)行完畢未關(guān)閉chromedriver/geckodriver進(jìn)程的解決辦法(java版+python版)
- Python基礎(chǔ)之進(jìn)程詳解
相關(guān)文章
Python標(biāo)準(zhǔn)庫(kù):內(nèi)置函數(shù)max(iterable, *[, key, default])說(shuō)明
這篇文章主要介紹了Python標(biāo)準(zhǔn)庫(kù):內(nèi)置函數(shù)max(iterable, *[, key, default])說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-04-04
Python實(shí)現(xiàn)輕松防止屏幕截圖的技巧分享
屏幕截圖是一種常見(jiàn)的用于記錄信息或者監(jiān)控用戶活動(dòng)的方法,為了保護(hù)隱私和數(shù)據(jù)安全,可以通過(guò)使用Python編寫一些防護(hù)措施來(lái)防止他人截取我們的屏幕,下面我們就來(lái)學(xué)習(xí)一下有哪些具體操作吧2023-12-12
python 下 CMake 安裝配置 OPENCV 4.1.1的方法
這篇文章主要介紹了python 下 CMake 安裝配置 OPENCV 4.1.1的方法,文中給大家提到了CMake 安裝配置 OPENCV 4.1.1 解決各種問(wèn)題,需要的朋友可以參考下2019-09-09
使用Python對(duì)SQLite數(shù)據(jù)庫(kù)操作
本文主要介紹了Python對(duì)SQLite數(shù)據(jù)庫(kù)操作的簡(jiǎn)單教程。SQLite是一種嵌入式數(shù)據(jù)庫(kù),它的數(shù)據(jù)庫(kù)就是一個(gè)文件。由于SQLite本身是C寫的,而且體積很小,所以,經(jīng)常被集成到各種應(yīng)用程序中,甚至在IOS和Android的APP中都可以集成。2017-04-04
python 安裝教程之Pycharm安裝及配置字體主題,換行,自動(dòng)更新
這篇文章主要介紹了python 安裝教程之Pycharm安裝及配置字體主題,換行,自動(dòng)更新,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-03-03
Python獲取當(dāng)前公網(wǎng)ip并自動(dòng)斷開(kāi)寬帶連接實(shí)例代碼
這篇文章主要介紹了Python獲取當(dāng)前公網(wǎng)ip并自動(dòng)斷開(kāi)寬帶連接實(shí)例代碼,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01
Python中Tkinter Scrollbar滾動(dòng)條(窗口滑動(dòng)條)
本文主要介紹了Python中Tkinter Scrollbar滾動(dòng)條(窗口滑動(dòng)條),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03

