.\" -*- 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_tryjoin_np 3 "17 مايو 2025" "صفحات دليل لينكس 6.18" .SH الاسم pthread_tryjoin_np, pthread_timedjoin_np \- محاولة الانضمام إلى خيط منتهٍ .SH المكتبة مكتبة مسالك POSIX (\fIlibpthread\fP،\ \fI\-lpthread\fP) .SH موجز .nf \fB#define _GNU_SOURCE\fP /* انظر feature_test_macros(7) */ \fB#include \fP .P \fBint pthread_tryjoin_np(pthread_t \fP\fIthread\fP\fB, void **\fP\fIretval\fP\fB);\fP \fBint pthread_timedjoin_np(pthread_t \fP\fIthread\fP\fB, void **\fP\fIretval\fP\fB,\fP \fB const struct timespec *\fP\fIabstime\fP\fB);\fP .fi .SH الوصف تعمل هاتان الدالتان بنفس طريقة \fBpthread_join\fP(3)، باستثناء الاختلافات الموصوفة في هذه الصفحة. .P تنفذ الدالة \fBpthread_tryjoin_np\fP() انضمامًا غير محظور مع الخيط \fIthread\fP، وتُعيد حالة خروج الخيط في \fI*retval\fP. إذا لم يكن \fIthread\fP قد انتهى بعد، فبدلاً من الحظر، كما تفعل \fBpthread_join\fP(3)، تُعيد الاستدعاء خطأً. .P تنفذ الدالة \fBpthread_timedjoin_np\fP() انضمامًا بمهلة زمنية. إذا لم يكن \fIthread\fP قد انتهى بعد، فسيحظر الاستدعاء حتى وقت أقصى، محدد في \fIabstime\fP، يُقاس مقابل ساعة \fBCLOCK_REALTIME\fP. إذا انتهت المهلة قبل إنهاء \fIthread\fP، يُعيد الاستدعاء خطأً. الوسيط \fIabstime\fP هو بنية \fBtimespec\fP(3)، تحدد وقتًا مطلقًا يُقاس منذ الحقبة (انظر \fBtime\fP(2)). .SH "قيمة الإرجاع" عند النجاح، تُعيد هاتان الدالتان 0؛ عند الخطأ، تُعيدان رقم خطأ. .SH الأخطاء يمكن أن تفشل هاتان الدالتان بنفس أخطاء \fBpthread_join\fP(3). يمكن أن تفشل \fBpthread_tryjoin_np\fP() بالإضافة إلى ذلك بالخطأ التالي: .TP \fBEBUSY\fP لم يكن \fIthread\fP قد انتهى بعد في وقت الاستدعاء. .P يمكن أن تفشل \fBpthread_timedjoin_np\fP() بالإضافة إلى ذلك بالأخطاء التالية: .TP \fBEINVAL\fP قيمة \fIabstime\fP غير صالحة (\fItv_sec\fP أقل من 0 أو \fItv_nsec\fP أكبر من 1e9). .TP \fBETIMEDOUT\fP انتهت مهلة الاستدعاء قبل إنهاء \fIthread\fP. .P لا تُعيد \fBpthread_timedjoin_np\fP() الخطأ \fBEINTR\fP أبدًا. .SH السمات للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. الواجهة السمة القيمة T{ .na .nh \fBpthread_tryjoin_np\fP(), \fBpthread_timedjoin_np\fP() T} سلامة الخيوط MT\-Safe .TE .SH المعايير جنو؛ ومن هنا جاءت اللاحقة "_np" (غير منقول) في الأسماء. .SH التاريخ glibc 2.3.3. .SH العلل تقيس الدالة \fBpthread_timedjoin_np\fP() الوقت بحساب داخلي لفاصل نوم نسبي يُقاس بعد ذلك مقابل ساعة \fBCLOCK_MONOTONIC\fP بدلاً من ساعة \fBCLOCK_REALTIME\fP. وبالتالي، لا تتأثر المهلة بالتغييرات غير المستمرة لساعة \fBCLOCK_REALTIME\fP. .SH أمثلة ينتظر الكود التالي الانضمام لمدة تصل إلى 5 ثوانٍ: .P .in +4n .EX struct timespec ts; int s; \& \&... \& if (clock_gettime(CLOCK_REALTIME, &ts) == \-1) { /* معالجة الخطأ */ } \& ts.tv_sec += 5; \& s = pthread_timedjoin_np(thread, NULL, &ts); if (s != 0) { /* معالجة الخطأ */ } .EE .in .SH "انظر أيضًا" \fBclock_gettime\fP(2), \fBpthread_exit\fP(3), \fBpthread_join\fP(3), \fBtimespec\fP(3), \fBpthreads\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 .