python多程序之暫停 掛起 子程序

2021-10-06 05:35:27 字數 885 閱讀 3313

有時候希望子程序能按需執行,就要用到本文說的方法了。

比如按快捷鍵就暫停子程序,再按快捷鍵又恢復子程序。整個過程並不是結束子程序後又啟動子程序,只是掛起子程序,子程序恢復後又能繼續之前的工作。

總之這個在實際中是非常有用的和實用的。

關鍵**:

import psutil

pause = psutil.process(pid) #傳入子程序的pid,這裡的pid用子程序的pid替換

pause.suspend() #暫停子程序

下面是完整**示例:

from multiprocessing import process

import os, time

import psutil

def run_proc(name):

for i in range(20):

print('我是子程序,我正在執行中')

time.sleep(3)

if __name__=='__main__':

#建立並啟動子程序

p = process(target=run_proc, args=('test',))

p.start()

pid = p.pid #獲取子程序的pid

#測試暫停子程序

time.sleep(9)

pause = psutil.process(pid) #傳入子程序的pid

pause.suspend() #暫停子程序

print('子程序暫停執行')

time.sleep(9)

pause.resume() #恢復子程序

print('\n子程序已恢復執行')

python多程序之程序池

在利用python進行系統管理的時候,特別是同時操作多個檔案目錄,或者遠端控制多台主機,並行操作可以節約大量的時間。當被操作物件數目不大時,可以直接利用multiprocessing中的process動態成生多個程序,十幾個還好,但如果是上百個,上千個目標,手動的去限制程序數量卻又太過繁瑣,此時可以...

python 多程序 之 join

今天一大早起床,又學三個臭函式,記錄一下自己渺小微弱的學習之路 有時候join 我們是用來連線字串的,但就在今天我學習程序的時候,看見join 居然不是用來連線字串了,而是用來阻塞程序,興趣大增,便深入了解了一下,join 的作用 在程序中可以阻塞主程序的執行,直到等待子執行緒全部完成之後,才繼續執...

python多程序之multiprocessing

簡單的理解 單板上執行的乙個程式就是乙個程序。程序是作業系統分配資源的最小單位,不同的程序之間資源不共享,程序間通訊需要使用特定的方式。python提供了自帶的multiprocessing庫,用於多執行緒場景。import multiprocessing import time defworker...