2015-10-31 50 views
1

必須創建一個進程家庭如上圖,我做到了。 下一步是打印所有父進程,他們正在等待其X個孩子。現在我如何找到一個父進程的所有子進程(C語言)

我的問題是我如何計算出或獲得的父進程有多少個子的信息。

我們正在與Debian的shell語言C語言進行編程,如果你能考慮這一點,同時也讓你的回答將是很好。

我沒有寫我的代碼到這裏的目的,因爲我不想讓基於代碼的答案,但思想和的竅門與參數,像一段時間的循環......我希望你明白我的意思^^

在此先感謝。

How the process family looks alike. Picture!

+0

看起來像一個傻瓜:http://stackoverflow.com/questions/20393397/how-to-get-all-child-processs-pids-when-given-the-parent-pid-in-c – szczurcio

+0

不,我不想要的代碼,但提示和的竅門......我們也還沒有指針用C又......我想那些明星是指針.... – ShAzad

+2

很難想出一個答案,如果你開始根據你的課程中「你已經擁有」的內容排除它們(至少對於沒有參加課程的人) –

回答

2

以下是你想這樣做非常基本步驟:

PS:假設您還沒有完成遞歸函數調用呢。

STEP1: First get the process id PID 
STEP2:Find the child process IDs for PID and maintain a list (array) of them. 
STEP3:Repeat STEP2 for all child process IDs saved in the list 
+0

謝謝我認爲這是一個很好的方法來解決任務... – ShAzad

相關問題