当前位置: 技术问答>linux和unix
LINUX(RED HAT 9)下多线程的问题
来源: 互联网 发布时间:2015-12-04
本文导语: 看资料上说,在RED HAT 9.0中,用的线程库是NPTL,每个线程都是一个轻量级进程. 请问在RED HAT 9.0中,对于一个进程下的多个线程,如果2个线程都于有SIGIO信号(从不同传串口)需要处理时,是应该为每个线程编写不同...
看资料上说,在RED HAT 9.0中,用的线程库是NPTL,每个线程都是一个轻量级进程.
请问在RED HAT 9.0中,对于一个进程下的多个线程,如果2个线程都于有SIGIO信号(从不同传串口)需要处理时,是应该为每个线程编写不同的信号处理函数?
还是像POSIX规范中描述的,一个进程中的所由线程是共享一个信号处理函数?
还有程序应该是区分不出信号从哪个串口来的吧?2个线程都处理SIGIO信号可行么?
请问在RED HAT 9.0中,对于一个进程下的多个线程,如果2个线程都于有SIGIO信号(从不同传串口)需要处理时,是应该为每个线程编写不同的信号处理函数?
还是像POSIX规范中描述的,一个进程中的所由线程是共享一个信号处理函数?
还有程序应该是区分不出信号从哪个串口来的吧?2个线程都处理SIGIO信号可行么?
|
按照我的理解,NPTL是支持POSIX的,从它的名字可以看出(Native POSIX Thread Library )。
对于线程,应该有一个主线程去处理信号,然后通过线程通信的方式让其他线程共同处理信号。
对于线程,应该有一个主线程去处理信号,然后通过线程通信的方式让其他线程共同处理信号。
|
在主线程处理信号,其他线程屏蔽掉信号.