當前位置:編程學習大全網 - 編程軟體 - 父進程用fork創建子進程之後,父子進程之間有什麽關系?

父進程用fork創建子進程之後,父子進程之間有什麽關系?

fork調用的壹個奇妙之處就是它僅僅被調用壹次,卻能夠返回兩次,它可能有三種不同的返回值:

1)在父進程中,fork返回新創建子進程的進程ID;

2)在子進程中,fork返回0;

3)如果出現錯誤,fork返回壹個負值;

在fork函數執行完畢後,如果創建新進程成功,則出現兩個進程,壹個是子進程,壹個是父進程。在子進程中,fork函數返回0,在父進程中,fork返回新創建子進程的進程ID。我們可以通過fork返回的值來判斷當前進程是子進程還是父進程。

引用壹位網友的話來解釋fpid的值為什麽在父子進程中不同。“其實就相當於鏈表,進程形成了鏈表,父進程的fpid(p 意味point)指向子進程的進程id, 因為子進程沒有子進程,所以其fpid為0.

  • 上一篇:浦發編程題庫
  • 下一篇:在C語言編程中輸入兩個序列
  • copyright 2024編程學習大全網