
デスクトップマスコット制作 プロセスメモリって何?
c#で何回もNEWするとプロセスメモリに関係しそうだ、けどコードを修正して、動作チェックしてみても使用メモリはあまり変わってなさそう
GPTに聞いてみた
プロセスメモリの仕組み
プログラムを実行すると、OS がメモリを割り当てる
OS はプログラムごとに独立したメモリを確保し、他のプロセスと干渉しないように管理する。
プロセスごとに仮想メモリが使われる
各プロセスは独自の 仮想メモリ空間 を持ち、物理メモリの一部やスワップ領域を利用する。
メモリの確保と解放が行われる
new(C# や C++)や malloc(C)を使ってメモリを確保し、delete や free で解放する。
メモリリーク(不要なメモリを解放しないこと)に注意が必要。
プロセスメモリの最適化
✅ 不要なオブジェクトを破棄する(Dispose() や GC.Collect() の活用)
✅ メモリリークを防ぐ(不要な new やイベントハンドラの削除)
✅ 最適なデータ構造を使う(リストや辞書のメモリ消費に注意)
まとめ
🔹 プロセスメモリは、プログラムが使用するメモリ領域のこと
🔹 OS が各プロセスに独立したメモリを割り当てる
🔹 ヒープやスタックなど、異なる種類のメモリ領域がある
🔹 メモリリークを防ぎ、適切に管理することが重要