[理工] OS的fork

看板Grad-ProbAsk作者 (P!n)時間8年前 (2016/02/25 19:37), 8年前編輯推噓1(103)
留言4則, 3人參與, 最新討論串1/1
請問 int main() { for( i=0 ; i<3 ; i++ ) fork(); printf("123") ; } // main() 我可以把它看成這樣嗎? int main() { fork(); fork(); fork(); printf( "123"); } // main() 然後假設是問 123 會印幾次 因為有時候題目迴圈一複雜我要觀察就有點慢,會在跑回圈的時候卡住 還是能有什麼其他好方法?? 煩請大大解惑!! 大家一起加油快要考完解脫了!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.225.242.192 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1456400260.A.0DB.html

02/25 19:45, , 1F
沒有像是if(fork())之類的條件 應該可以
02/25 19:45, 1F
謝謝大大解答,再請教我有點卡住的地方,如果看迴圈版那個當i=0進入迴圈後的那次fork 那次產生的兒子是從i=1進去嗎?(因為從父親喊fork的下一個要做的事開始做) 我好懷疑為啥我卡在這裡T_T ※ 編輯: lazyzone0963 (36.225.242.192), 02/25/2016 19:52:20

02/25 19:52, , 2F
應該是8次吧
02/25 19:52, 2F

02/25 19:53, , 3F
應該是吧 好久沒看到fork() QQ
02/25 19:53, 3F
是8次沒錯,謝謝兩位大大解惑!!真的突然遇到題目就卡住了QQ ※ 編輯: lazyzone0963 (36.225.242.192), 02/25/2016 19:57:14

02/28 14:36, , 4F
可唷 反正就是執行3次 除非回圈裡面有特殊條件
02/28 14:36, 4F
文章代碼(AID): #1MpkU43R (Grad-ProbAsk)