Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
仕様によると、関数は「スレッドまたはプロセスが終了するのを待ってブロックしてはなりません。つまり、通常、function() は、子プロセスとワーカー スレッドが完了する前に戻ります。」どうすればそれを達成できますか?pthread_join を指定すると、関数は pthread が終了するまで待機します。これがないと、スレッドはすべての作業を行う前にキャンセルされます。
ありがとう。
私には、スレッドへの参照をスレッドのコンテナーに格納する必要があるように思えます。これは、グローバルであるか、関数によって返され、呼び出し元によって保持されます。次に、プロセスの最後に (ただし、関数が戻った後はさらに長くなる可能性があります)、pthread_joinそのコンテナー内のすべてのスレッドを呼び出して、それらが適切に終了していることを確認します。
pthread_join