fork 的使用理解

2021-09-20 07:20:49 字數 716 閱讀 2995

查詢fork()函式有以下幾種返回值

1.在父程序中,fork返回新建立子程序的程序id;

2.在子程序中,fork返回0;

3.如果出現錯誤,fork返回乙個負值。

總是不理解進行試驗驗證

#include#include#include#include#includeint main(int argc, int** ar**)

else if(pid==0)else

return 2;

}

執行結果

由結果知fork()在不同的程序中返回的結果是不同的子程序中返回的是0,父程序中返回的是子程序id。main程序總是由3203這個程序建立檢視程序列表3203 是shell程序

子程序中為什麼有時會出現父程序id為1,這是因為父程序(main)可能在子程序執行起來的時候已經執行結束了,這是子程序沒有了父程序,子程序變成了孤兒程序,孤兒程序的父程序都會變成init程序兒init程序id就是1

fork 函式 fork 函式的使用

fork的意思是個叉子,在unix及其衍生版linux中,用於建立子程序,現在看一下fork函式的基本用法。include includeint main printf c b fflush stdout fork printf c c fflush stdout 上圖的輸出是什麼呢?答案是 bab...

fork 函式 自己的理解

大家都知道fork 函式生成和原程序完全相同的子程序。父程序返回子程序的pid,子程序返回0.同時要注意一點fork 不象執行緒需提供乙個函式做為入口,fork 後,子程序的入口就在 fork 的下一條語句。因此如下函式 我見過的一道筆試題 void func 問題是呼叫此函式,會列印多少 注意子程...

對fork 函式的理解

標頭檔案 include cpp view plain copy pid t fork void 1.建立乙個子程序,失敗返回 1。2.呼叫一次,返回兩次。分別在父子程序中返回子程序的pid和0。利用返回值的不同,可以分別為父子程序編寫不同的處理分支。cpp view plain copy incl...