سؤال

ما هي POSIX إلغاء النقاط ؟ أنا أبحث عن قائمة نهائية من POSIX إلغاء نقاط.

أنا أسأل لأن لدي الكتاب الذي يقول accept() و select() يتم إلغاء النقاط, ولكن رأيت من المواقع على شبكة الإنترنت تدعي أنها ليست كذلك.

أيضا ، إذا لينكس إلغاء نقاط مختلفة من POSIX إلغاء نقاط أريد قائمة لهم أيضا.

هل كانت مفيدة؟

المحلول

على POSIX 1003.1-2003 معيار يعطي قائمة في واجهات نظام القسم ، ثم معلومات عامة ، ثم المواضيع (رابط مباشر مقدمة من A.ريكس).(وأضاف: POSIX 1003.1-2008 متاحة الآن على شبكة الإنترنت (كل 3872 صفحة في PDF و HTML).يجب عليك التسجيل (مجانا).حصلت عليه من مجموعة مفتوحة مكتبة.)

إلغاء نقاط

إلغاء النقاط سوف تحدث عندما يكون الموضوع هو تنفيذ المهام التالية:

  • قبول()
  • aio_suspend()
  • clock_nanosleep()
  • close()
  • ربط()
  • ليخلق()
  • fcntl() (عندما cmd الحجة F_SETLKW)
  • fdatasync()
  • fsync()
  • getmsg()
  • getpmsg()
  • lockf()
  • mq_receive()
  • mq_send()
  • mq_timedreceive()
  • mq_timedsend()
  • msgrcv()
  • msgsnd()
  • msync()
  • nanosleep()
  • فتح()
  • وقفة()
  • استطلاع()
  • pread()
  • pselect()
  • pthread_cond_timedwait()
  • pthread_cond_wait()
  • pthread_join()
  • pthread_testcancel()
  • putmsg()
  • putpmsg()
  • pwrite()
  • قراءة()
  • readv()
  • recv()
  • recvfrom()
  • recvmsg()
  • حدد()
  • sem_timedwait()
  • sem_wait()
  • إرسال()
  • sendmsg()
  • sendto()
  • sigpause()
  • sigsuspend()
  • sigtimedwait()
  • sigwait()
  • sigwaitinfo()
  • النوم()
  • نظام()
  • tcdrain()
  • usleep()
  • انتظر()
  • waidid()
  • waitpid()
  • كتابة()
  • writev()


إلغاء النقطة قد يحدث أيضا عندما يكون الموضوع هو تنفيذ المهام التالية:


  • الوصول()
  • asctime()
  • asctime_r()
  • catclose()
  • catgets()
  • catopen()
  • closedir()
  • closelog()
  • ctermid()
  • ctime()
  • ctime_r()
  • dbm_close()
  • dbm_delete()
  • dbm_fetch()
  • dbm_nextkey()
  • dbm_open()
  • dbm_store()
  • dlclose()
  • dlopen()
  • endgrent()
  • endhostent()
  • endnetent()
  • endprotoent()
  • endpwent()
  • endservent()
  • endutxent()
  • fclose()
  • fcntl() (أي قيمة cmd الحجة.[ويفترض إلا F_SETLKW التي يتم سردها.]
  • fflush()
  • fgetc()
  • fgetpos()
  • fgets()
  • fgetwc()
  • fgetws()
  • fmtmsg()
  • fopen()
  • fpathconf()
  • fprintf()
  • fputc()
  • fputs()
  • fputwc()
  • fputws()
  • fread()
  • freopen()
  • fscanf()
  • fseek()
  • fseeko()
  • fsetpos()
  • fstat()
  • ftell()
  • ftello()
  • ftw()
  • fwprintf()
  • fwrite()
  • fwscanf()
  • getaddrinfo()
  • getc()
  • getc_unlocked()
  • getchar()
  • getchar_unlocked()
  • getcwd()
  • getdate()
  • getgrent()
  • getgrgid()
  • getgrgid_r()
  • getgrnam()
  • getgrnam_r()
  • gethostbyaddr()
  • gethostbyname()
  • gethostent()
  • gethostid()
  • gethostname()
  • getlogin()
  • getlogin_r()
  • getnameinfo()
  • getnetbyaddr()
  • getnetbyname()
  • getnetent()
  • getopt() (إذا opterr غير الصفر.)
  • getprotobyname()
  • getprotobynumber()
  • getprotoent()
  • getpwent()
  • getpwnam()
  • getpwnam_r()
  • getpwuid()
  • getpwuid_r()
  • يحصل()
  • getservbyname()
  • getservbyport()
  • getservent()
  • getutxent()
  • getutxid()
  • getutxline()
  • getwc()
  • getwchar()
  • getwd()
  • glob()
  • iconv_close()
  • iconv_open()
  • ioctl()
  • الرابط()
  • localtime()
  • localtime_r()
  • lseek()
  • lstat()
  • mkstemp()
  • mktime()
  • nftw()
  • opendir()
  • openlog()
  • pathconf()
  • pclose()
  • perror()
  • popen()
  • posix_fadvise()
  • posix_fallocate()
  • posix_madvise()
  • posix_openpt()
  • posix_spawn()
  • posix_spawnp()
  • posix_trace_clear()
  • posix_trace_close()
  • posix_trace_create()
  • posix_trace_create_withlog()
  • posix_trace_eventtypelist_getne
  • posix_trace_eventtypelist_rewin
  • posix_trace_flush()
  • posix_trace_get_attr()
  • posix_trace_get_filter()
  • posix_trace_get_status()
  • posix_trace_getnext_event()
  • posix_trace_open()
  • posix_trace_rewind()
  • posix_trace_set_filter()
  • posix_trace_shutdown()
  • posix_trace_timedgetnext_event(
  • posix_typed_mem_open()
  • printf()
  • pthread_rwlock_rdlock()
  • pthread_rwlock_timedrdlock()
  • pthread_rwlock_timedwrlock()
  • pthread_rwlock_wrlock()
  • putc()
  • putc_unlocked()
  • putchar()
  • putchar_unlocked()
  • يضع()
  • pututxline()
  • putwc()
  • putwchar()
  • readdir()
  • readdir_r()
  • إزالة()
  • إعادة تسمية()
  • الترجيع()
  • rewinddir()
  • scanf()
  • seekdir()
  • semop()
  • setgrent()
  • sethostent()
  • setnetent()
  • setprotoent()
  • setpwent()
  • setservent()
  • setutxent()
  • القانون الأساسي()
  • strerror()
  • strerror_r()
  • strftime()
  • الارتباط الرمزي()
  • sync()
  • syslog()
  • tmpfile()
  • tmpnam()
  • ttyname()
  • ttyname_r()
  • tzset()
  • ungetc()
  • ungetwc()
  • ربط()
  • vfprintf()
  • vfwprintf()
  • vprintf()
  • vwprintf()
  • wcsftime()
  • wordexp()
  • wprintf()
  • wscanf()


التنفيذ لا يجوز إدخال إلغاء النقاط إلى أي مهام أخرى محددة في هذا الحجم من IEEE الأمراض المنقولة جنسيا 1003.1-2001.

الآثار الجانبية بناء على طلب الإلغاء في حين علقت أثناء المكالمة وظيفة هي نفس الآثار الجانبية التي يمكن أن ينظر إليها في برنامج واحد مترابطة عند استدعاء دالة تنقطع إشارة معينة الدالة بإرجاع [EINTR].أي من هذه الآثار الجانبية تحدث قبل أي تنظيف إلغاء معالجات تسمى.

كلما موضوع cancelability تمكين إلغاء الطلب مع هذا الموضوع الهدف و الخيط ثم يدعو أي وظيفة إلغاء النقطة (مثل pthread_testcancel() أو قراءة ()) ، طلب الإلغاء يجب أن تتخذ قبل أن ترجع الدالة.إذا كان مؤشر ترابط قد cancelability تمكين إلغاء الطلب مع الموضوع كهدف في حين أن الموضوع هو تعليق على إلغاء النقطة الخيط يكون أيقظ إلغاء الطلب والبت فيه.ومع ذلك ، إذا كان الموضوع هو تعليق على إلغاء نقطة الحدث الذي ينتظر يحدث قبل طلب الإلغاء هو تصرف عليها ، فمن غير محدد إذا كان طلب الإلغاء هو تصرف عليها أو ما إذا كان طلب الإلغاء لا تزال معلقة و الخيط يستأنف التنفيذ العادي.

هتاف اشمئزاز!لا يمكن الحصول على الجدول للعمل بشكل جيد جدا بدا حسنا في معاينة و لا شيء مثل الجدول بعد ذلك.انظروا إلى عنوان URL على المعلومات!هناك الكثير من الممكن إلغاء نقاط.

نصائح أخرى

pthread_cancel رجل الصفحة للحصول على مزيد من المعلومات وسريعة.

معلومات إضافية: منذ النواة 2.6، استخدم لينكس مكتبة موضوع NPTL وهو POSIX متوافقة، لذلك يجب أن يكون نقطة إلغاء على النحو الوارد أعلاه لimplmentations لينكس الأخيرة

http://www.ddj.com/linux-open-source/184406204

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top