2 如果一個過程確實fork然後孩子做setsid,有沒有什麼辦法可以告訴它,它是第一個過程的孩子?有沒有辦法和父母一起殺死這樣的過程?有沒有辦法告訴如果一個過程是一個孩子,如果它叉,然後setsid 來源 2016-05-27 ren
1 setsid不會破壞父母/子女關係。所以你仍然可以得到一個過程的孩子, G。如描述here(鏈接我們ubuntu的具體,但這適用於任何其他分佈)。 父進程始終可以輕鬆跟蹤其直接子項,因爲fork返回它們的ID(大孩子得到更多tricky ...)並在退出(優雅地)時向其任何子項發送信號。 prctl(PR_SET_PDEATHSIG, <signal>)(如果父母死亡,方便孩子接收信號的方便方法)也可以在對setsid的調用中存活。 來源 2016-05-28 05:06:02 Aconcagua