多线程 – 多线程信号处理

>在unix中,如果一个多线程进程发送一个信号,哪个线程将是执行处理函数的那个​​线程?
>如果是一个多cpu机器,多个线程同时运行.哪个线程将被开启运行信号处理功能?
最佳答案
根据man 7 signal,该进程中的所有线程共享相同的信号处理程序,并且如果一个信号被传送到具有多个未阻塞信号的线程的进程,则其中一个被任意选择来接收它.

拥有多CPU机器不会改变这些语义.

转载注明原文:多线程 – 多线程信号处理 - 代码日志