全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:5884
推到 Plurk!
推到 Facebook!

fork使用

尚未結案
RickyT
一般會員


發表:15
回覆:25
積分:13
註冊:2002-06-15

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-06-02 03:14:00 IP:211.74.xxx.xxx 未訂閱
請問各位前輩一個小問題~ 我在linux用C呼叫fork(),複製一個程序,請問呼叫fork()後,include檔裡面的變數是會複製一份,還是子程序和父程序會共用一份呢?因為include檔是在fork()函數之前的.. 例如 ABC.h檔 int a; a.c檔 #include ABC.h main() { fork(); : : } 請問整數變數a是子程序和父程序共用,還是各自擁有一個整數變數a呢?
rexchiu
中階會員


發表:14
回覆:88
積分:70
註冊:2002-03-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-06-03 18:04:40 IP:220.130.xxx.xxx 未訂閱
fork() 會產生一個新的子行程,該子行程會複製父行程的資料與堆疊空間, 並繼承父行程的使用者代碼,群組代碼,環境變數,已開啟的檔案代碼,工作目錄, 資源限制等. 由於這些繼承的資訊是複製來的,並非是相同的記憶空間,因此,子行程對這些 變數的修改和父行程並不會同步.此外子行不會繼承父行程的檔案鎖定和未處 理的訊號. 這樣應該有回答你的問題了吧?呵呵..順便複習了一下fork()的東西...:) Best Regards, Rex Chiu 發表人 - rexchiu 於 2005/06/03 18:06:04
------
Best Regards,
Rex Chiu
RickyT
一般會員


發表:15
回覆:25
積分:13
註冊:2002-06-15

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-06-07 13:49:41 IP:203.64.xxx.xxx 未訂閱
真是太詳細了..我也印證過了..確實如前輩說的..感謝指導囉.. ^^
系統時間:2024-04-29 7:21:44
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!