pthread_attr_setsigmask_np(3)

الاسم
pthread_attr_setsigmask_np, pthread_attr_getsigmask_np - تعيين/الحصول على سمة قناع الإشارة في كائن سمات الخيط

المكتبة
مكتبة مسالك POSIX (libpthread، -lpthread)

موجز
#define _GNU_SOURCE             /* انظر feature_test_macros(7) */
#include <pthread.h>

int pthread_attr_setsigmask_np(pthread_attr_t *attr,
                               const sigset_t *sigmask);
int pthread_attr_getsigmask_np(const pthread_attr_t *attr,
                               sigset_t *sigmask);

الوصف
تضبط الدالة pthread_attr_setsigmask_np() سمة قناع الإشارة لكائن سمات الخيط المشار إليه بواسطة attr إلى القيمة المحددة في *sigmask. إذا حُدد sigmask كـ NULL، فتُلغى أي سمة قناع إشارة موجودة في attr.

تُرجع الدالة pthread_attr_getsigmask_np() سمة قناع الإشارة لكائن سمات الخيط المشار إليه بواسطة attr في المخزن المؤقت المشار إليه بواسطة sigmask. إذا كانت سمة قناع الإشارة غير مضبوطة حاليًا، فتُرجع هذه الدالة القيمة الخاصة PTHREAD_ATTR_NO_SIGMASK_NP كنتيجة.

قيمة الإرجاع
تُرجع الدالة pthread_attr_setsigmask_np() 0 عند النجاح، أو رقم خطأ غير صفري عند الفشل.

تُرجع الدالة pthread_attr_getsigmask_np() إما 0 أو PTHREAD_ATTR_NO_SIGMASK_NP. عندما تُرجع 0، تُعاد سمة قناع الإشارة عبر sigmask. تشير قيمة الإرجاع PTHREAD_ATTR_NO_SIGMASK_NP إلى أن سمة قناع الإشارة غير مضبوطة في attr.

عند الخطأ، تُرجع هذه الدوال رقم خطأ موجب.

الأخطاء

ENOMEM
    (pthread_attr_setsigmask_np()) تعذر تخصيص الذاكرة.

السمات
للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر attributes(7).
الواجهة | السمة | القيمة
pthread_attr_setsigmask_np(), pthread_attr_getsigmask_np() | سلامة الخيوط | MT-Safe

المعايير
جنو؛ ومن هنا جاءت اللاحقة "_np" (غير منقول) في الأسماء.

التاريخ
glibc 2.32.

ملاحظات
تحدد سمة قناع الإشارة قناع الإشارة الذي سيُخصص لخيط يُنشأ باستخدام كائن سمات الخيط attr. إذا لم تُضبط هذه السمة، فسيرث الخيط المنشأ باستخدام attr نسخة من قناع إشارة الخيط المنشئ.

لمزيد من التفاصيل حول أقنعة الإشارة، انظر sigprocmask(2). لوصف مجموعة من وحدات الماكرو التي يمكن استخدامها لمعالجة وفحص مجموعات الإشارات، انظر sigsetops(3).

في غياب pthread_attr_setsigmask_np()، يمكن إنشاء خيط بقناع إشارة مرغوب كما يلي:

•   يستخدم الخيط المنشئ pthread_sigmask(3) لحفظ قناع الإشارة الحالي وتعيين قناعه لحظر جميع الإشارات.

•   ثم يُنشأ الخيط الجديد باستخدام pthread_create()؛ سيرث الخيط الجديد قناع إشارة الخيط المنشئ.

•   يضبط الخيط الجديد قناع إشارته إلى القيمة المرغوبة باستخدام pthread_sigmask(3).

•   يستعيد الخيط المنشئ قناع إشارته إلى القيمة الأصلية.

باتباع الخطوات أعلاه، لا يوجد احتمال لاستقبال الخيط الجديد إشارة قبل أن يضبط قناع إشارته إلى القيمة المرغوبة.

انظر أيضًا
sigprocmask(2), pthread_attr_init(3), pthread_sigmask(3), pthreads(7), signal(7)

ترجمة
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 (https://www.gnu.org/licenses/gpl-3.0.html) أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.