मैं एक सी परियोजना में स्थिति प्रक्रिया कैसे प्राप्त कर सकता हूं? [डुप्लीकेट]
मेरी सी परियोजना के लिए मुझे यह जानना आवश्यक है कि विभिन्न प्रक्रियाएँ किस राज्य में चल रही हैं (प्रतीक्षा, समाप्त, समाप्त ...)। कई कांटे () का उपयोग करके प्रक्रियाएं स्वयं बनाई जाती हैं। क्या किसी को कोई विचार है कि कैसे करना है?
उदाहरण: मेरे पास PPID = x के साथ एक प्रक्रिया है जो मैं 3 कांटा () करता हूं -> मुझे PID = x + 1, PID = x + 2 और PID = x + 3 (अधिक या कम) के साथ तीन नई प्रक्रियाएं मिलती हैं। मुझे यह जानने की जरूरत है कि क्या PID = x + 1, PID = x + 2, और PID = x + 3 के साथ प्रक्रियाएं चल रही हैं या प्रतीक्षा या समाप्त हो रही हैं।
जवाब
यदि आप 3 कार्य करते हैं तो आपके पास 3 fork()
से अधिक नई प्रक्रियाएँ हैं। आपके पास 2 ^ n प्रक्रियाएं हैं। n आपके द्वारा कॉल किए जाने की संख्याfork()
उदाहरण के लिए
#include <stdio.h>
#include <sys/types.h>
int main()
{
fork();
fork();
fork();
printf("hello\n");
return 0;
}
प्रिंट करता है
hello
hello
hello
hello
hello
hello
hello
hello
मैं भी मानता हूं कि आपके प्रश्न का उत्तर यहां दिया गया है