|
主线程里创建了两个子线程.
如何实现主线程里接收到SIGINT信号后,执行一个函数后,退出
我在主线程里用signal(SIGINT,myfunc);
在myfunc里用pthread_kill_other_threads_np()杀掉两个子线程,然后做一些退出时的工作.
因为线程同步的问题,在主线程里的signal函数之后还要调用一个pthread_join(thread1)
但是这样,有时会出现问题.就是在命令行中输入Ctrl+C,看着程序执行完myfunc之后退出了,但是有时候,该程序的进程仍然存在.
不知道如何解决啊? |
|