pthread_kill(3)

الاسم
pthread_kill - إرسال إشارة إلى خيط

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

موجز
#include <signal.h>

int pthread_kill(pthread_t thread, int sig);

    متطلبات ماكروات اختبار الميزات لـ glibc (انظر feature_test_macros(7)):

pthread_kill():
    _POSIX_C_SOURCE >= 199506L || _XOPEN_SOURCE >= 500

الوصف
ترسل الدالة pthread_kill() الإشارة sig إلى thread، وهو خيط في نفس العملية التي يستدعيها المتصل. تُوجَّه الإشارة بشكل غير متزامن إلى thread.

إذا كانت sig تساوي 0، فلا تُرسل أي إشارة، ولكن يُجرى التحقق من الأخطاء.

قيمة الإرجاع
عند النجاح، تُرجع pthread_kill() 0؛ عند الخطأ، تُرجع رقم خطأ، ولا تُرسل أي إشارة.

الأخطاء

EINVAL
    عُيّنت إشارة غير صالحة.

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

الإصدارات
يُعطي تطبيق glibc للدالة pthread_kill() خطأ (EINVAL) عند محاولة إرسال أي من إشارات الوقت الفعلي المستخدمة داخليًا بواسطة تطبيق خيوط NPTL. انظر nptl(7) للتفاصيل.

يوصي POSIX.1-2008 بأنه إذا اكتشف تطبيق ما استخدام معرّف خيط بعد انتهاء عمره، يجب أن تُرجع pthread_kill() الخطأ ESRCH. يُرجع تطبيق glibc هذا الخطأ في الحالات التي يمكن فيها اكتشاف معرّف خيط غير صالح. ولكن لاحظ أيضًا أن POSIX ينص على أن محاولة استخدام معرّف خيط انتهى عمره تُنتج سلوكًا غير محدد، ومحاولة استخدام معرّف خيط غير صالح في استدعاء pthread_kill() يمكن أن تسبب، على سبيل المثال، خطأ تجزئة.

المعايير
POSIX.1-2008.

التاريخ
POSIX.1-2001.

ملاحظات
توزيعات الإشارات على مستوى العملية: إذا تم تثبيت معالج إشارة، سيُستدعى المعالج في الخيط thread، ولكن إذا كان توزيع الإشارة هو "إيقاف" أو "استمرار" أو "إنهاء"، سيؤثر هذا الإجراء على العملية بأكملها.

انظر أيضًا
kill(2), sigaction(2), sigpending(2), pthread_self(3), pthread_sigmask(3), raise(3), pthreads(7), signal(7)

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

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

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