03-线程和信号
33.2 线程和信号
UNIX信号模型是基于UNIX进程模型而设计的,问世比Pthreads要早几十年。自然而然,信号与线程模型之间存在一些明显的冲突。主要是因为,一方面,针对单线程进程要保持传统的信号语义(Pthreads不应改变传统进程的信号语义),与此同时,又需要开发出适用于多线程进程环境的新信号模型。
信号与线程模型之间的差异意味着,将二者结合使用,将会非常复杂,应尽可能加以避免。尽管如此,有的时候还是必须在多线程程序中处理信号问题。本节将讨论信号与线程间的交互,并描述在多线程程序中处理信号的各种有效函数。