当前位置: 技术问答>linux和unix
信号与线程的问题
来源: 互联网 发布时间:2015-12-04
本文导语: A. 1个SIGIO信号来,3个线程都可以捕捉,2个线程作忽略信号的操作,1个线程调用信号处理程序. B. 1个SIGIO信号来,3个线程中的两个阻塞,一个调用信号处理程序. 请问:A,B哪中方式适合于在三个线程中对SIGIO信号的处理? 另...
A. 1个SIGIO信号来,3个线程都可以捕捉,2个线程作忽略信号的操作,1个线程调用信号处理程序.
B. 1个SIGIO信号来,3个线程中的两个阻塞,一个调用信号处理程序.
请问:A,B哪中方式适合于在三个线程中对SIGIO信号的处理?
另外:用pthread_sigmask阻塞一个信号,是把一个线程给挂起了么?
谢谢
B. 1个SIGIO信号来,3个线程中的两个阻塞,一个调用信号处理程序.
请问:A,B哪中方式适合于在三个线程中对SIGIO信号的处理?
另外:用pthread_sigmask阻塞一个信号,是把一个线程给挂起了么?
谢谢
|
比较而言B要好一些,因为A的结果不可预知,信号处理函数可能不会被调用.
进程接收到一个信号后,是由线程库来决定哪个具体的线程来接收信号,如果库发县某个线程设置了mask将不会将信号递交到该线程。
进程接收到一个信号后,是由线程库来决定哪个具体的线程来接收信号,如果库发县某个线程设置了mask将不会将信号递交到该线程。
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。