回答
像特拉维斯说的,SIGCANCEL
已经deprecated并不存在于POSIX标准。
在文件glibc-2.9/nptl/pthread_cancel.c中,我可以找到SIGCANCEL。因此我想知道功能。那么当你调用pthread_cancel()时会发生什么? – notytony 2011-04-25 22:10:32
@notytony是的,它似乎仍然存在于glibc 2.9中,但如果你看看内核手册页,[它不在](http://www.kernel.org/doc/man-pages/online/pages/ man7/signal.7.html)。我没有pthread的经验,但它似乎不是你的标准信号。我读取的一小部分文档表明它用于向与调用者处于同一进程的线程发送信号。您可能想将pthread_cancel与[pthread_kill]进行比较(http://glibc.sourcearchive.com/documentation/2.9-9ubuntu2/pthread__kill_8c-source.html)。 – voithos 2011-04-26 04:22:54
的SIGCANCEL
目前在glibc
并行线程执行被定义为__SIGRTMIN
使用(内部)。
如果pthread_cancel()
被调用的取消类型设置为异步的线程,它会通过通过tgkill()
发送。
相反,这可能意味着接收到__SIGRTMIN
的线程的行为就好像它被异步取消一样。 (我没有测试过)
- 1. 并发线程同时添加到ArrayList - 会发生什么?
- 2. 当我将MPI_Send发送到已完成的进程时会发生什么?
- 3. 当获取它的线程退出时,Mutex会发生什么?
- 4. 当某个线程调用Thread.interrupt()时,会发生什么?
- 5. ConcurrentHashMap.clear()读线程会发生什么?
- 6. 当发生javascript运行时错误时会发生什么?
- 7. 当协程引发异常时会发生什么?
- 8. 当一个线程完成其互斥量时,线程会发生什么?
- 9. 当一个线程被阻塞时,其他线程会发生什么?
- 10. 当我ping 127.0.0.1时会发生什么
- 11. 当redis重载时会发生什么?
- 12. 当crontabs重叠时会发生什么?
- 13. 当AsyncTasks已满时会发生什么?
- 14. 当我编译时会发生什么?
- 15. 发生故障时会发生什么?
- 16. 当模块初始化发生异常时会发生什么
- 17. 当primary_key默认发生冲突时,Django会发生什么?
- 18. 当用户不响应推送通知时会发生什么?
- 19. 什么时候会发生?
- 20. 当一个定时器线程进入睡眠状态时会发生什么
- 21. 当线程在设置锁定时关闭时会发生什么情况
- 22. 当发送QStandardItemModel itemChanged时发生了什么变化
- 23. 发送大型json HTTP响应时会发生什么?
- 24. 多线程想要访问ReentrantReadWriteLock时会发生什么?
- 25. Android - 活动完成时线程会发生什么?
- 26. 加入超时值后,Java线程会发生什么变化
- 27. 取消时线程的内存会发生什么变化?
- 28. 当您在程序集中推送内存地址时会发生什么?
- 29. 在WPF/Prism中,当DelegateCommand.RaiseCanExecuteChanged被触发时,CompositeCommand会发生什么?
- 30. ASP.Net的自动回发。当它太慢时会发生什么?
我不认为'SIGCANCEL'在Linux中完全支持。我知道它被POSIX所弃用。 – 2011-04-25 21:10:32