1、說明
fork() 可以在 python 程式中輕鬆建立子程序,實現多程序。
unix/linux 作業系統(比如常見的 mac 咯)提供了乙個 fork() 系統呼叫,它被呼叫一次,返回兩次,因為作業系統自動把當前程序(稱為父程序)複製了乙份(稱為子程序),然後分別在父程序和子程序內返回。
2、例項
import os
print
("正在執行的程序是 %s ..."
% os.
getpid()
)pid = os.
fork
() # 如果是子程序返回0,而父程序返回子程序的id,有了fork呼叫,乙個程序在接到新任務時就可以複製出乙個子程序來處理新任務,常見的apache伺服器就是由父程序監聽埠,每當有新的http請求時,就fork出子程序來處理新的http請求。
print
("\rpid 是 %s"
%pid)
if pid ==0:
print
("子程序是 %s 和父程序是 %s."
%(os.
getpid()
, os.
getppid()
))else
:print
("在父程序 %s 中建立了子程序 %s."
%(os.
getpid()
, pid)
)
以上就是python中fork()的呼叫,希望對大家有所幫助。 系統呼叫fork
fork的基本內容 fork是依次呼叫兩次返回,分別返回在父程序和子程序中 1 在父程序中,fork返回新建立子程序的程序id 2 在子程序中,fork返回0 3 如果出現錯誤,fork則返回乙個負值 例子 void fork0 else 在這段 中,fork 被執行後將建立與父程序相同的子程序,並...
Linux中fork 系統呼叫函式
什麼是fork 呼叫fork 發生了什麼 子程序建立後,系統會給子程序分配資源,然後把原來的程序的所有值都複製到新的子程序中,只有少數值與原來的程序的值不同 其實就是父程序的乙份副本。但是子程序和父程序駐留在不同的記憶體空間上。這些記憶體空間具有相同的內容,並且乙個程序執行的任何操作都不會影響其他程...
Linux中fork函式的呼叫情況分析
分析以下 輸出結果,已知從這個程式執行到這個程式的所有程序結束這個時間段內,沒有其它新程序執行。1 請說出執行這個程式後,將一共執行幾個程序。2 如果其中乙個程序的輸出結果是 pid1 1001,pid2 1002 寫出其他程序的輸出結果 不考慮程序執行順序 這裡考查的是fork 的呼叫情況,在li...