ما هو Pthread_cond_signal؟
ما هو Pthread_cond_signal؟

فيديو: ما هو Pthread_cond_signal؟

فيديو: ما هو Pthread_cond_signal؟
فيديو: The Black Eyed Peas - My Humps 2024, شهر نوفمبر
Anonim

ال pthread_cond_signal () تقوم الوظيفة بإلغاء حظر واحد على الأقل من الخيوط التي تم حظرها على شرط متغير الشرط المحدد (إذا تم حظر أي خيوط عند الشرط). إذا تم حظر أكثر من مؤشر ترابط واحد في متغير شرط ، فيجب أن تحدد سياسة الجدولة الترتيب الذي يتم فيه إلغاء حظر سلاسل الرسائل.

ببساطة ، ما هو Pthread_cond_t؟

وصف. ال pthread_cond_wait () والدالة pthread_cond_timedwait () تستخدم لمنع متغير الشرط. يتم استدعاؤها مع كائن المزامنة (mutex) مؤمن بواسطة مؤشر ترابط الاستدعاء أو سينتج عن ذلك سلوك غير محدد.

بالإضافة إلى ذلك ، لماذا يحتاج Pthread_cond_wait إلى كائن المزامنة (mutex)؟ ال كائن المزامنة يستخدم لحماية متغير الشرط نفسه. لهذا السبب أنت يحتاج مغلق أمامك فعل انتظار. ثم عندما يتم إرسال إشارة إلى متغير الحالة أو بثه ، سيتم إيقاظ واحد أو أكثر من سلاسل الرسائل في قائمة الانتظار وسيتم كائن المزامنة سيتم قفله بطريقة سحرية مرة أخرى لهذا الموضوع.

علاوة على ذلك ، كيف تستخدم متغيرات الشرط؟

بشكل نموذجي استعمال ، أ شرط يتم تقييم التعبير تحت حماية قفل كائن المزامنة (mutex). عندما شرط التعبير خاطئ ، كتل الخيط على متغير الشرط . ال متغير الشرط ثم يتم الإشارة إليه بواسطة مؤشر ترابط آخر عندما يغير ملف شرط القيمة.

ما هو Pthread_mutex_t؟

pthread_mutex_t يستخدم للإعلان عن كائن من نوع كائن المزامنة (mutex). هكذا: pthread_mutex_t متغير. يمكنك بعد ذلك استخدام متغير كائن المزامنة (mutex) لقفل وإلغاء قفل كائن المزامنة (mutex).