在C中使用pthread库,是否可以向单个线程发送SIGSTOP信号?
我想确保即使我在循环中创建N个线程,所有应该只在所有线程都已创建时才开始执行。
我问,因为pthread_kill()
的手册页提到:
信号处理是 整个过程:如果是信号处理程序 安装后,将调用该处理程序 在里面 线程线程,但如果信号的处置是“停止”, 这个“继续”或“终止” 行动会 影响整个过程。
答案 0 :(得分:2)
您应该使用mutexes和conditions。
以下是关于如何做到这一点的great example。
答案 1 :(得分:2)
障碍(参见pthread_barrier_init
)是实现所需目标的更简单方法。