※ ChatGPTを利用し、要約された質問です(原文:メモリを解放しないとどうなる?)
メモリを解放しないとどうなる?
このQ&Aのポイント
C言語やC++言語のように、動的に確保したメモリを使用後に意識して解放しないといけない言語で、プログラム(アプリケーション)を終了した場合にはシステム的にどうなるのか調査します。
確保されたメモリ領域がそのまま残り、システムとして使用できるメモリ量が減るのか、アプリケーションの終了時に自動的に解放されるのかを確認します。
特にWindowsの場合について調査し、メモリ解放の重要性と注意点についても解説します。
趣味でプログラムの勉強をしています。
初歩的な質問になると思いますが、よろしくお願いします。
C言語やC++言語のように、動的に確保したメモリを使用後に意識して解放しないといけない言語で、解放の処理をしないままプログラム(アプリケーション)を終了した場合にはシステム(OS?)的にはどのような状態になるのでしょうか?
例:
・malloc して free しない
・new して delete しない
確保されたメモリ領域がそのまま残り、システムとして使用できるメモリ量が減る(解放にはPCの再起動が必要)のでしょうか?
それともアプリケーションの終了時に自動的に解放されるのでしょうか?
Windowsの場合を想定してご回答いただだけると嬉しいです。
お礼
確認方法も含めてご回答ありがとうございました。 実際に試してみたところ、ご教示いただきましたとおりPF使用量が増加し続け、アプリケーションの強制終了で元に戻ることが確認できました。