.\" -*- coding: UTF-8 -*- '\" t .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: Linux-man-pages-copyleft .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH pthread_sigmask 3 "21 سبتمبر 2025" "صفحات دليل لينكس 6.18" .SH الاسم pthread_sigmask \- فحص وتغيير قناع الإشارات المحجوبة .SH المكتبة مكتبة مسالك POSIX (\fIlibpthread\fP،\ \fI\-lpthread\fP) .SH موجز .nf \fB#include \fP .P \fBint pthread_sigmask(int \fP\fIhow\fP\fB, const sigset_t *\fP\fIset\fP\fB, sigset_t *\fP\fIoldset\fP\fB);\fP .fi .P .RS -4 متطلبات ماكروات اختبار الميزات لـ glibc (انظر \fBfeature_test_macros\fP(7)): .RE .P \fBpthread_sigmask\fP(): .nf _POSIX_C_SOURCE >= 199506L || _XOPEN_SOURCE >= 500 .fi .SH الوصف الدالة \fBpthread_sigmask\fP() تشبه تمامًا \fBsigprocmask\fP(2)، مع الفارق أن استخدامها في البرامج متعددة الخيوط محدد صراحةً بواسطة POSIX.1. الفروق الأخرى مذكورة في هذه الصفحة. .P لوصف المعاملات وتشغيل هذه الدالة، انظر \fBsigprocmask\fP(2). .SH "قيمة الإرجاع" عند النجاح، تُرجع \fBpthread_sigmask\fP() 0؛ عند الخطأ، تُرجع رقم خطأ. .SH الأخطاء انظر \fBsigprocmask\fP(2). .SH السمات للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. الواجهة السمة القيمة T{ .na .nh \fBpthread_sigmask\fP() T} سلامة الخيوط MT\-Safe .TE .SH المعايير POSIX.1\-2008. .SH التاريخ POSIX.1\-2001. .SH ملاحظات يرث الخيط الجديد نسخة من قناع الإشارات لمنشئه. .P تتجاهل دالة glibc \fBpthread_sigmask\fP() بصمت محاولات حجب إشارتي الوقت الفعلي المستخدمتين داخليًا بواسطة تطبيق الخيوط NPTL. انظر \fBnptl\fP(7) للتفاصيل. .SH أمثلة يحجب البرنامج أدناه بعض الإشارات في الخيط الرئيس، ثم ينشئ خيطًا مخصصًا لجلب تلك الإشارات عبر \fBsigwait\fP(3). توضح جلسة الصدفة التالية استخدامه: .P .in +4n .EX $\fB ./a.out &\fP [1] 5423 $\fB kill \-QUIT %1\fP Signal handling thread got signal 3 $\fB kill \-USR1 %1\fP Signal handling thread got signal 10 $\fB kill \-TERM %1\fP [1]+ Terminated ./a.out .EE .in .SS "مصدر البرنامج" .\" SRC BEGIN (pthread_sigmask.c) \& .EX #include #include #include #include #include #include #include \& /* Simple error handling functions */ \& static void * sig_thread(void *arg) { sigset_t *set = arg; int s, sig; \& for (;;) { s = sigwait(set, &sig); if (s != 0) errc(EXIT_FAILURE, s, "sigwait"); printf("Signal handling thread got signal %d\[rs]n", sig); } } \& int main(void) { pthread_t thread; sigset_t set; int s; \& /* Block SIGQUIT and SIGUSR1; other threads created by main() will inherit a copy of the signal mask. */ \& sigemptyset(&set); sigaddset(&set, SIGQUIT); sigaddset(&set, SIGUSR1); s = pthread_sigmask(SIG_BLOCK, &set, NULL); if (s != 0) errc(EXIT_FAILURE, s, "pthread_sigmask"); \& s = pthread_create(&thread, NULL, &sig_thread, &set); if (s != 0) errc(EXIT_FAILURE, s, "pthread_create"); \& /* Main thread carries on to create other threads and/or do other work. */ \& pause(); /* Dummy pause so we can test program */ } .EE .\" SRC END .SH "انظر أيضًا" \fBsigaction\fP(2), \fBsigpending\fP(2), \fBsigprocmask\fP(2), \fBpthread_attr_setsigmask_np\fP(3), \fBpthread_create\fP(3), \fBpthread_kill\fP(3), \fBsigsetops\fP(3), \fBpthreads\fP(7), \fBsignal\fP(7) .PP .SH ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .PP هذه الترجمة هي وثيقة مجانية؛ راجع .UR https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 .UE أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .PP إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .MT kde-l10n-ar@kde.org .ME .