SIG_DFL(信号的默认处理程序)具体做什么?我对调试SIGTSTP感兴趣。在奇怪的条件下,它会有轻微的异常行为。我怀疑如果其中一个线程处于TASK_INTERRUPTIBLE状态,则会执行一些奇怪的操作。
SIG_DFL源代码在哪里?Libc中吗?
谢谢。
SIG_DFL (用于信号的默认处理程序) 究竟是什么?
SIG_DFL 的作用正如其字面意思所述:告诉内核,对于给定的信号没有用户信号处理程序,并且内核应该采取默认操作(操作本身可能是忽略信号、终止程序(有或无核心转储)等,具体取决于信号)。
SIG_DFL 源代码在哪里?Libc吗?
通常情况下,在 /usr/include/signal.h
中会有一个 #define SIG_DLF -1
,但具体决策由内核负责。