PYTHON——多程序:Process類
阿新 • • 發佈:2018-11-06
構造方法:
Process([group [, target [, name [, args [, kwargs]]]]])
group: 執行緒組,目前還沒有實現,庫引用中提示必須是None;
target: 要執行的方法;
name: 程序名;
args/kwargs: 要傳入方法的引數。
例項方法:
is_alive():返回程序是否在執行。
join([timeout]):阻塞當前上下文環境的程序程,直到呼叫此方法的程序終止或到達指定的timeout(可選引數)。
start():程序準備就緒,等待CPU排程
run():strat()呼叫run方法,如果例項程序時未制定傳入target,這star執行t預設run()方法。
terminate():不管任務是否完成,立即停止工作程序
屬性:
authkey
daemon:和執行緒的setDeamon功能一樣
exitcode(程序在執行時為None、如果為–N,表示被訊號N結束)
name:程序名字。
pid:程序號
例項:
import time from multiprocessing import Process def foo(i): time.sleep(1) print (p.is_alive(),i,p.pid) time.sleep(1) if __name__ == '__main__': p_list=[] for i in range(10): p = Process(target=foo, args=(i,)) #p.daemon=True p_list.append(p) for p in p_list: p.start() # for p in p_list: # p.join() print('main process end')