当前位置: 技术问答>linux和unix
高分求解,信号捕获
来源: 互联网 发布时间:2015-10-02
本文导语: 我做了一个LINUX程序,共启动了5个线程,并在主线程里设置信号捕获函数: (void)signal(35,myclose); 现在我想向主线程发送35的信号,由主线程来关闭其它子线程并结束程序。 现在的问题是,我不知道那个PID是主线程的,...
我做了一个LINUX程序,共启动了5个线程,并在主线程里设置信号捕获函数:
(void)signal(35,myclose);
现在我想向主线程发送35的信号,由主线程来关闭其它子线程并结束程序。
现在的问题是,我不知道那个PID是主线程的,也就是说我不知道该向那个PID发送35的信号,
想请高人帮忙解决,怎么实现我的功能(主线程来关闭其它子线程并结束程序)。
(void)signal(35,myclose);
现在我想向主线程发送35的信号,由主线程来关闭其它子线程并结束程序。
现在的问题是,我不知道那个PID是主线程的,也就是说我不知道该向那个PID发送35的信号,
想请高人帮忙解决,怎么实现我的功能(主线程来关闭其它子线程并结束程序)。
|
pthread_kill
|
不指定 信号应该被进程任意分配给线程
你应该pthread_sigmask() 一下
你应该pthread_sigmask() 一下
|
我在sco unixware下用的pthread_kill向线程送信号,可行