यह एक मेरी काटनेवाला में How to squeeze in additional parameters to a reaper function when a parent is signalled to kill a child (c)?प्रतीक्षा करें()/प्रतीक्षापिड() 1 लौटाता है, बच्चे की पिड नहीं, उसे कैसे ठीक किया जाए?
लिए अनुवर्ती है(), मैं प्राप्त करने के लिए बच्चे के माता-पिता के बारे में pid (गैर क्रूर शब्द यहाँ) खत्म करने के लिए है की कोशिश करो। लेकिन प्रतीक्षा करें() बच्चे की पिड वापस नहीं करता है; इसके बजाय, यह 1 लौटाता है। मुझे 1 के रिटर्न वैल्यू के लिए कोई डॉक्टर नहीं मिल रहा है। कोई सिर ऊपर?
void reaper(int sig)
{
int status, killedpid;
while(killedpid = (/*waitpid(-1, &status, WNOHANG)*/wait(&status)) >= 0)
{
printf("reaper %d killed %d\n", getpid(), killedpid);
}
}
मेरे परिणाम:
reaper 5933 killed 1 //actual child pid is 5936
अग्रिम धन्यवाद!
ओह, मैं कहता हूं कि शब्दावली के साथ आगे बढ़ें। यह * निक्स के मजे का हिस्सा है। "बच्चे की मृत्यु हो गई, और माता-पिता ने ज़ोंबी प्रक्रिया काट दिया।" – Thanatos