لینکس کمانڈ سیکھیں - انتظار کریں

نام

انتظار کرو، انتظار کریں - عمل ختم ہونے کا انتظار کریں

مطمئن

# sys / types.h> شامل کریں
# sys / wait.h> شامل کریں

pid_t انتظار (int * حیثیت
pid_t ویسٹ پیڈ (pid_t pid ، int * حیثیت ، int اختیارات

تفصیل

انتظار کے عمل کو موجودہ عمل کے عمل میں معطل کر دیا جاتا ہے جب تک کہ بچے کو باہر نکلا جاسکتا ہے، یا جب سگنل ڈیلی ہوئی ہے، جس کا عمل موجودہ عمل کو ختم کرنا ہے یا سگنل ہینڈلنگ کی تقریب کو کال کرنا ہے. اگر ایک بچہ پہلے سے ہی کال کے وقت سے نکلتا ہے (ایک نام نہاد "زومبی" عمل)، اس تقریب کو فوری طور پر واپس آتا ہے. بچے کی طرف سے استعمال کردہ کسی بھی نظام کے ذریعہ آزاد ہو گئے ہیں.

ویٹپیڈ تقریب موجودہ عمل کے عملدرآمد کو معطل کردیتا ہے جب تک کہ پڈ دلیل کی طرف سے متعین شدہ بچے کی طرف سے مخصوص نہیں ہے، یا جب سگنل فراہم ہوجائے جس کی کارروائی موجودہ عمل کو ختم کرنا ہے یا سگنل ہینڈلنگ کی تقریب کو کال کرنا ہے. اگر پیڈ کے ذریعہ درخواست کردہ بچے کو پہلے سے ہی کال (وقت نامہ "زومبی" عمل) کے ذریعہ سے نکال دیا گیا ہے تو، اس تقریب کو فوری طور پر واپسی دیتا ہے. بچے کی طرف سے استعمال کردہ کسی بھی نظام کے ذریعہ آزاد ہو گئے ہیں.

پڈ کی قیمت میں سے ایک ہو سکتا ہے:

<-1

جس کا مطلب کسی بھی بچے کے عمل کا انتظار کرنا ہے جس کے عمل گروپ کی شناختی پیڈ کی مطلق قیمت کے برابر ہے.

-1

جس کا مطلب کسی بچے کے عمل کا انتظار کرنا ہے؛ یہ ایک ہی رویہ ہے جس میں نمائش کا منتظر ہے .

0

جس کا مطلب کسی بھی بچے کے عمل کا انتظار کرنا جس کے عمل گروپ کی شناخت کالنگ کے عمل کے برابر ہے.

> 0

جس کا مطلب یہ ہے کہ اس بچے کا انتظار کرنا جن کے عمل کی شناخت پیڈ کی قیمت کے برابر ہے.

اختیارات کی قیمت صفر یا مندرجہ بالا مندرجہ بالا میں سے زیادہ ہے:

وانہوگ

جس کا مطلب یہ ہے کہ اگر کوئی بچہ نہیں نکلتا تو فوری طور پر واپس آنے کا مطلب ہے.

بند ہو گیا

جس کا مطلب یہ ہے کہ بچوں کی واپسی بھی روک دی گئی ہے، اور جس کی حیثیت کی اطلاع نہیں ملی ہے.

(لینکس صرف اختیارات کے لئے، ذیل میں ملاحظہ کریں.)

اگر حیثیت نول نہیں ہے، تو انتظار میں یا ویسٹ پیڈ اسٹور کی حیثیت کی معلومات کی حیثیت سے مقام کی طرف اشارہ کیا جاتا ہے .

اس حیثیت کو مندرجہ ذیل میکرو کے ساتھ اندازہ کیا جاسکتا ہے (یہ میکرو ایک دلیل کے طور پر ایک انٹرفیس (ایک int ) لے لیتے ہیں --- بفر پر ایک پوائنٹر نہیں!):

وابستہ ( حیثیت )

اگر بچے کو عام طور سے خارج کر دیا گیا تو صفر غیر صفر ہے.

ویکسٹیسٹیٹ ( حیثیت )

بچے کی واپسی کے کوڈ کے کم از کم اہم آٹھ بٹس کا اندازہ لگایا گیا ہے جس میں ختم ہوسکتا ہے، جو بنیادی پروگرام میں واپسی کے بیان سے باہر نکلنے کے لئے کال کے دلیل کے طور پر مقرر کیا جاسکتا ہے. اگر یہ ایرر برقرار رہے تو ہمارے ہیلپ ڈیسک سے رابطہ کریں. غلط استعمال کی اطلاع دیتے ہوئے ایرر آ گیا ہے.

وائی ​​فائیجائزڈ ( حیثیت )

اگر کوئی بچہ نہیں ہوا تھا تو سگنل کی وجہ سے بچے کے عمل سے باہر نکل جاتا ہے.

WTERMSIG ( حیثیت )

اس سگنل کی تعداد لوٹاتا ہے جس کی وجہ سے بچے کے عمل کو ختم کرنا پڑتا ہے. اگر یہ ایرر برقرار رہے تو ہمارے ہیلپ ڈیسک سے رابطہ کریں. غلط استعمال کی اطلاع دیتے ہوئے ایرر آ گیا ہے. براہ مہربانی دوبارہ کوشش کریں. اگر یہ ایرر برقرار رہے تو ہمارے ہیلپ ڈیسک سے رابطہ کریں.

وائی ​​فسٹپپس ( حیثیت )

واپسی کا سبب بنتا ہے جس میں بچے کی عمل اس وقت بند کردی گئی ہے اگر یہ ایرر برقرار رہے تو ہمارے ہیلپ ڈیسک سے رابطہ کریں. اگر یہ ایرر برقرار رہے تو ہمارے ہیلپ ڈیسک سے رابطہ کریں. غلط استعمال کی اطلاع دیتے ہوئے ایرر آ گیا ہے.

WSTOPSIG ( حیثیت )

اس سگنل کی تعداد میں واپس آتی ہے جس سے بچے کو روکنے کی وجہ سے. اگر یہ ایرر برقرار رہے تو ہمارے ہیلپ ڈیسک سے رابطہ کریں. غلط استعمال کی اطلاع دیتے ہوئے ایرر آ گیا ہے.

یونیکس کے کچھ ورژن (مثال کے طور پر لینکس، شمسیس، لیکن نہیں AIX، SunOS) بھی ایک میکرو WCOREDUMP ( حیثیت ) کی وضاحت کرنے کے لئے کی جانچ پڑتال کرنے کے لئے بھی جانچ پڑتال کرنے کے لئے کہ آیا بچے کے عمل کو گرا دیا بنیادی ہے. #ifdef WCOREDUMP میں صرف اس کا استعمال کریں ... #endif.

واپس قیمت

WNOHANG استعمال کیا جاتا ہے اگر بچہ خارج ہونے والے بچے کی عمل کی شناخت اور کوئی بچہ دستیاب نہیں تھا، یا -1 غلطی (جس صورت میں غلطی مناسب قیمت پر مقرر کی گئی ہے).

غلطیاں

ایچلیڈ

اگر عمل میں بیان کیا گیا ہے پڈ موجود نہیں ہے یا کالنگ کے عمل کا بچہ نہیں ہے. (یہ کسی کے اپنے بچے کے لئے ہو سکتا ہے اگر SIGCHLD کے لئے کارروائی SIG_IGN پر دی گئی ہے تو اس سلسلے میں لینکس نوٹس سیکشن بھی دیکھیں.)

EINVAL

اگر اختیارات کی دلیل غلط تھی.

EINTR

اگر وانہوگ سیٹ نہیں کیا گیا اور ایک غیر مسدود سگنل یا SIGCHLD پکڑا گیا تھا.