本人想在主线程中发信号给另外一个线程,然后应该怎么做?
解决方案
10
信号是给进程的,不是给线程的。
5
《Windows核心编程》
30
下面几种情况,可以把信号发送到某个指定的线程。
A..某个特定硬件指令执行后(在该线程内执行的),产生的信号,将会发送到该线程内。例如SIGBUS,SIGFPE,SIGILL,SIGSEGV。
B.当线程尝试向一个broken pipe写数据时,会产生一个SIGPIPE.
C.使用pthread_kill()或pthread_sigqueue()。这些函数允许一个线程发送信号到另一个线程(同一进程中)。
其他情况都是把信号发送到整个进程(例如,kill()和sigqueue())。
A..某个特定硬件指令执行后(在该线程内执行的),产生的信号,将会发送到该线程内。例如SIGBUS,SIGFPE,SIGILL,SIGSEGV。
B.当线程尝试向一个broken pipe写数据时,会产生一个SIGPIPE.
C.使用pthread_kill()或pthread_sigqueue()。这些函数允许一个线程发送信号到另一个线程(同一进程中)。
其他情况都是把信号发送到整个进程(例如,kill()和sigqueue())。