“wait()系统调用暂停执行当前进程,直到其子进程终止”。 Waitpid也很相似。
我的问题是,从一个线程调用wait()是否会导致所有其他线程(在同一个进程中)也进入休眠状态?分离线程的行为是否也相同?
答案 0 :(得分:3)
这只是手册中的一个错误。 wait
暂停调用线程,而不是进程。绝对没有办法暂停整个过程而不是发送它SIGSTOP
或手动暂停每个线程一次。
答案 1 :(得分:0)
据我所知,从任何线程调用wait将导致与该进程关联的所有线程停止。
但是不要抱我这么做。最好的办法就是测试它。
答案 2 :(得分:0)
应该只停止当前线程。如果你想让人们在看你的代码时生病并给你自己造成很多问题,你可以将它用于陪审团操纵线程同步。我不会推荐它。