有多个线程在执行任务,当一个线程成功时,所有的线程都应该被取消,因为工作已经完成。一旦一个线程成功终止,如何取消其他线程?谁会调用
pthread_cancel()
,成功的线程如何告诉main
或生成它的线程(返回值?)。
更新
我不想简单地调用exit
,因为我现在需要一些控制。例如,在线程被取消后,我将处理成功线程找到的结果,并可能进行一些额外的处理,或者只是想让进程继续运行一段时间以完成一些更多的工作。