獲取程序編號
阿新 • • 發佈:2021-01-19
1、原因:目的是為了驗證主程序和子程序的關係。通過獲取程序編號可以得知某個子程序是由哪個主程序創建出來的。
2、獲取當前程序編號:os.getpid()
3、獲取父程序編號:os.getppid()
4、獲取當前程序名字:multiprocessing.current_process()
5、殺死當前指定程序: os.kill(程序ID,9) 第二個引數9表示強制殺死程序
一、獲取主程序編號及名字
from multiprocessing import Process,current_process from time import * import os def sing():View Codefor i in range(3): print('唱歌中....') sleep(0.2) # 獲取子程序的編號及程序名 print("sing的程序編號為: %s, 名字是: %s" % (os.getpid(),current_process())) print("sing的父程序編號為:%s" % (os.getppid())) def dance(): for i in range(3): print('跳舞中....') sleep(0.2) # 獲取子程序的編號及程序名 print("dance的程序編號為:%s,名字是:%s" %(os.getpid(),current_process())) print("dance的父程序編號為:%s" % (os.getppid())) # 獲取主程序的編號及程序名 print("主程序的編號為:%s,名字為:%s" % (os.getpid(),current_process())) # 建立子程序 p1 = Process(target=sing) p2 = Process(target=dance) # 啟動子程序 p1.start() p2.start()
執行效果:
二、強制殺死程序
from multiprocessing import Process,current_process from time import * import os def sing(): for i in range(3): print('唱歌中....') sleep(0.2) os.kill(os.getpid(),9) # 獲取子程序的編號及程序名 print("sing的程序編號為: %s, 名字是: %s" % (os.getpid(),current_process())) print("sing的父程序編號為:%s" % (os.getppid())) def dance(): for i in range(3): print('跳舞中....') sleep(0.2) # 獲取子程序的編號及程序名 print("dance的程序編號為:%s,名字是:%s" %(os.getpid(),current_process())) print("dance的父程序編號為:%s" % (os.getppid())) # 獲取主程序的編號及程序名 print("主程序的編號為:%s,名字為:%s" % (os.getpid(),current_process())) # 建立子程序 p1 = Process(target=sing) p2 = Process(target=dance) # 啟動子程序 p1.start() p2.start()View Code
執行結果: