看板 Grad-ProbAsk 關於我們 聯絡資訊
※ 引述《compulsory (生既無歡 死又何懼?)》之銘言: : int main() : { : for(i=0;i<3;i++) : if(fork()==0) [1] : { : fork(); [2] : fork(); [3] : fork(); [4] : } : } : i=0時 : 父 : ↓ : 子 --------------[1] : ↓ : 子 --------------[2] : ↓\ : 子 子-----------[3] : / ↓ ↓\ : 子 子 子 子-------[4] : 最開始的parent可以創造出8個child : i=1的時候進入此loop的process有9個 : 所以可以造出9*8個 : i=2的時候進入此loop的process有9+9*8個 : 所以可以造出(9+9*8)*8 : 以上全部再加起來就是了 : 我的一點看法 有錯請指正 看了之後還是不大了解 請問一下那個樹狀圖是怎麼推出來的 感謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.120.228.196 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1450859222.A.BE1.html
howard396501: 這樣說好了,父生出if這個子,if這個子就是下面三個 12/23 17:05
howard396501: 子的父,以此類推,上面的樹狀圖好像有錯,[2]已經 12/23 17:06
howard396501: 生一個子,所以[3]右邊的子應該是從[1]出來 12/23 17:07
howard396501: [4]兩側的子應該分別從[1]和[2]再生出來 12/23 17:08
lemonsheep: 感謝 所以child是會從parent 在code裡面呼叫他的地方 12/23 18:14
lemonsheep: 接著執行下去嗎 12/23 18:14
kev72806: 沒有錯! 12/23 18:33
howard396501: Yes 12/24 02:05