来自https://computing.llnl.gov/tutorials/pthreads/:
一个加入线程可以匹配一个 pthread_join() 调用。在同一个线程上尝试多个连接是一个逻辑错误。
同样来自“man pthread_join”:
如果多个线程同时尝试加入同一个线程,结果是不确定的。
但是,从程序员的角度来看,多个线程可能希望等待单个线程完成(类似于屏障)是完全合理的。
例如,我们可能有 thread1、thread2 独立运行,我们可能希望两个线程都等到 thread3 完成。
这种限制背后有什么技术原因吗?