當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python multiprocessing.Process用法及代碼示例


用法:

class multiprocessing.Process(group=None, target=None, name=None, args=(), kwargs={}, *, daemon=None)

流程對象表示在單獨流程中運行的活動。 Process 類與 threading.Thread 的所有方法等效。

應始終使用關鍵字參數調用構造函數。 group 應始終為 None ;它的存在僅僅是為了與 threading.Thread 兼容。 target 是由run() 方法調用的可調用對象。它默認為 None ,這意味著沒有調用任何內容。 name 是進程名稱(有關更多詳細信息,請參閱name)。 args 是目標調用的參數元組。 kwargs 是目標調用的關鍵字參數字典。如果提供,僅關鍵字 daemon 參數將進程 daemon 標誌設置為 TrueFalse 。如果None(默認),這個標誌將從創建過程中繼承。

默認情況下,沒有參數傳遞給 target

如果子類覆蓋構造函數,它必須確保在對進程執行任何其他操作之前調用基類構造函數 (Process.__init__())。

在 3.3 版中更改:添加了daemon爭論。

除了threading.Thread API,Process 對象還支持以下屬性和方法:

請注意,start()join()is_alive()terminate()exitcode 方法隻能由創建進程對象的進程調用。

Process 的一些方法的示例用法:

>>> import multiprocessing, time, signal
 >>> p = multiprocessing.Process(target=time.sleep, args=(1000,))
 >>> print(p, p.is_alive())
 <Process ... initial> False
 >>> p.start()
 >>> print(p, p.is_alive())
 <Process ... started> True
 >>> p.terminate()
 >>> time.sleep(0.1)
 >>> print(p, p.is_alive())
 <Process ... stopped exitcode=-SIGTERM> False
 >>> p.exitcode == -signal.SIGTERM
 True

相關用法


注:本文由純淨天空篩選整理自python.org大神的英文原創作品 multiprocessing.Process。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。