abort(3) Library Functions Manual abort(3)

abort - سبب إنهاء العملية غير الطبيعي

مكتبة سي المعيارية (libc، -lc)

#include <stdlib.h>
[[noreturn]] void abort(void);

الدالة abort() تزيل أولا حظر إشارة SIGABRT، ثم ترفع تلك الإشارة للعملية المستدعية (كما لو كانت raise(3) قد استُدعيت). يؤدي هذا إلى إنهاء العملية غير الطبيعي ما لم تُلتقط إشارة SIGABRT ولا يعود معالج الإشارة (انظر longjmp(3)).

إذا جُهلت إشارة SIGABRT، أو التُقطت بواسطة معالج يعود، فإن الدالة abort() ستظل تنهي العملية. تفعل ذلك باستعادة التصرف المبدئي لـ SIGABRT ثم رفع الإشارة مرة ثانية.

كما في حالات أخرى من الإنهاء غير الطبيعي، الدوال المسجلة مع atexit(3) و on_exit(3) لا تُستدعى.

الدالة abort() لا تعود أبدا.

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

الواجهة السمة القيمة
abort() سلامة الخيوط MT-Safe

C11, POSIX.1-2008.

SVr4, POSIX.1-2001, 4.3BSD, C89.

حتى glibc 2.26، إذا تسببت الدالة abort() في إنهاء العملية، أُغلقت جميع التدفقات المفتوحة وفُرغت (كما في fclose(3)). لكن، في بعض الحالات قد يؤدي هذا إلى أقفال ميتة وإفساد البيانات. لذلك، بدءا من glibc 2.27، تنهي abort() العملية دون تفريغ التدفقات. يسمح POSIX.1 بأي من السلوكين المحتملين، قائلا إن abort() "قد تتضمن محاولة لتنفيذ fclose() على جميع التدفقات المفتوحة".

gdb(1), sigaction(2), assert(3), exit(3), longjmp(3), raise(3)

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

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

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

8 فبراير 2026 صفحات دليل لينكس 6.18