分段错误处理程序是线程安全的吗?

时间:2012-08-13 16:06:27

标签: linux multithreading segmentation-fault

当多线程应用程序中的Linux发生分段故障并调用处理程序时,是否所有其他线程在调用处理程序之前立即停止? 那么,依赖于在分段故障处理期间不会执行任何parralel代码的事实是否合适? 谢谢。

1 个答案:

答案 0 :(得分:0)

signal(7)手册页:

  

可以为整个过程(例如,当使用kill(2)发送时)或针对特定线程(例如,某些信号,例如SIGSEGV和SIGFPE,生成为信号)生成(并因此待决)信号。执行特定机器语言指令的结果是线程指示的,使用pthread_kill(3)针对特定线程的信号也是如此。可以将过程引导的信号传递到当前没有阻塞信号的任何一个线程。如果多个线程的信号未被阻塞,则内核会选择一个任意线程来传递信号。

本段说某些信号,如SIGSEGV,是特定于线程的。哪个应该回答你的问题。