Linux 信号是如何实现的?
如果单线程进程当前正在运行并且内核检测到信号,那么内核是否只是停止当前执行,保存指令指针的当前地址空间并运行信号处理程序。换句话说,它使用的线程与程序用来执行信号处理程序的线程相同? 如果进程是多线程的,会发生什么?如果一个程序有3个线程,其中一个线程为SIGUSR1注册信号处理程序,那么内核是否会中断已注册信号处理程序的线程,其余两个线程将继续运行?可能重复?Linux 信号是如何实现的?,linux,Linux,如果单线程进程当前正在运行并且内核检测到信号,那么内核是否只是停止当前执行,保存指令指针的当前地址空间并运行信号处理程序。换句话说,它使用的线程与程序用来执行信号处理程序的线程相同? 如果进程是多线程的,会发生什么?如果一个程序有3个线程,其中一个线程为SIGUSR1注册信号处理程序,那么内核是否会中断已注册信号处理程序的线程,其余两个线程将继续运行?可能重复?