スレッドを使用しているときに、スレッドが終了まで実行されているが、デタッチされていないスレッドはゾンビ状態にあり、結合で刈り取られるのを待っているか、またはリソースをクリーンアップできるように切り離されます。スレッドは、終了したときにスタックが持続していると、スタックが解除されない理由は何ですか?
スレッドがゾンビのときにクリーンアップされない2つの「リソース」は、スタックと戻り値です。
誰かが、結合が行われるまでスタックを持続させるロジックを教えてもらえますか?戻り値が別の場所にある場合、私は正当な理由があるとは思えませんが、スレッドが使用されていることを知りたいと思います。
これはOSに非常に依存する質問だと思います。また、スタックメモリが解放されていないことをどのように伝えることができますか? –
戻り値がスタックに格納されている可能性がありますか?しかし、一般的にこれは非常にシステムに依存します。 –