PTT
Submit
Submit
選擇語言
正體中文
简体中文
PTT
Grad-ProbAsk
[理工] fork()問題
作者:
garnettooo
(絕代風華賈奈特)
2017-04-04 18:48:00
各位大大好,小弟看到一題詢問有多少process會產生的fork()提,想請問各位要
怎麼算及分析題目
int main(){
int i;
for(i=0;i<3;i++){
if(fork()==0){
fork();
fork();
fork();
}
}
我知道當i=0的時候會產生出8個process,但是i=1&i=2時要如何判定fork()==0?
謝謝大家!
作者:
yupog2003
(屁股)
2017-04-04 20:02:00
fork執行後,一個process會變成兩個process,一個是parent,一個是child,其中parent process從fork()得到的回傳值是child process的id,child process從fork()得到的回傳值為0,從這邊下去判斷是否為0跟i等於多少沒有關係
作者:
darren0831
(達)
2017-04-05 13:25:00
parent process得到的回傳值不是0,不會通過if判別式i=0時 除了一開始的主程式外還會生出另外八個process而這些process在i=1時,因為if(fork()==0)而會產生其他9個child process,跑完i=1後共81個process依此類推~配合yu大大的推文應該可以理解
作者:
nakabin
(日落)
2017-04-08 01:07:00
每一次跑loop的時候遇到的fork產生的child的回傳值才會是0 以前的child已經不是child惹
作者:
yupog2003
(屁股)
2017-04-08 10:07:00
為人子女有朝一日也會成為父母
繼續閱讀
[理工] [資結]big-oh基本證明
shownlin
[理工] 98成大 工數PDE
DianLuTu
[理工] 通訊三角波平均功率
Mariobrother
會計兩題
SuperBu
[理工] 離散 排列
jerry900287
Re: [理工] 101清大/103交大 離散 質因數分解
a016258
[理工] 91台科 工數-d'Alembert
DianLuTu
[商管][統計][核對]-台大106-商研甲
unknown
Re: [理工] 101清大/103交大 離散 質因數分解
joy7658x348
[理工] [計組] pipeline ALUSrc產生時間
shownlin
Links
booklink
Contact Us: admin [ a t ] ucptt.com