sudo python 程序數量

2021-09-03 01:49:41 字數 1344 閱讀 3465

process.py程式如下:

def

worker

(interval)

:print os.getpid(

) n =

5while n >0:

print

("the time is "

.format

(time.ctime())

) time.sleep(interval)

n -=

1if __name__ ==

"__main__"

: p = multiprocessing.process(target = worker, args =

(200,)

) p.start(

)print os.getpid(

) p.join(

)#print "p.pid:", p.pid

#print "p.name:", p.name

#print "p.is_alive:", p.is_alive()

主程序啟動了乙個子程序,並且會答應出兩個程序的程序id。

使用ps -ef | grep process.py看一下當前程序的數量,這裡使用兩種方式執行

python process.py

yeruoxi   8520  8339  0 13:01 pts/2    00:00:00 python process.py

yeruoxi 8521 8520 0 13:01 pts/2 00:00:00 python process.py

sudo python process.py

root      8653  8339  0 13:02 pts/2    00:00:00 sudo python process.py

root 8675 8653 0 13:02 pts/2 00:00:00 python process.py

root 8676 8675 0 13:02 pts/2 00:00:00 python process.py

使用sudo執行時,多了乙個程序,這是為什麼呢?

8653這個程序,不是python程式建立的,這個可通過程式輸出的程序id知道。其實這個程序是由sudo命令產生的,sudo命令是先建立乙個root使用者的shell,sudo python process.py就是新建的這個shell程序,然後8675這個程序就是在這個shell上啟動的python process.py的程序,8676就是process.py程式中啟動的子程序。

參考:

C 多程序開發,控制程序數量

正在c 程式優化時,如果多執行緒效果不佳的情況下,也會使用多程序的方案,如下 system.threading.tasks.task task system.threading.tasks.task.factory.startnew object mystate collectpathitems.d...

C 檢測程序數量,開啟一定數量的程序 三

一下程式可以實現開啟3個程序,並且實時的監控程序數量,等到所有的程序都退出後,再重新建立3個程序。如此迴圈往復 include stdafx.h include include include include include psapi.h pragma comment lib,kernel32.l...

獲取程序控制代碼的數量

unit unit1 inte ce uses winapi.windows,winapi.messages,system.sysutils,system.variants,system.classes,vcl.graphics,vcl.controls,vcl.forms,vcl.dialogs,...