XNA GameStudio 3.0がリリースされて一週間、ライブラリを3.0に移行したりC#3.0を盛り込んでみたりといろいろ試しているわけですが、ここらでXNA2.0までで得たノウハウの様なものをまとめておこうかと思います。 今回はガーベージコレクションの話です。 ガーベージコレクション(以下GC)とは不要なメモリーを自動的に解放する仕組みのことです。 C言語のmallocとfree、C++のnewとdeleteなど従来の言語ではメモリの確保と解放を行う機能が対になっておりプログラマがメモリの管理を確実に行う必要がありました。GCはその負担を軽減するために導入された機能になります。 しかし、GCはあまり軽い処理ではなく、実行中にCPUに大きく負荷をかけるといったデメリットもあり、特にゲームではゲーム中の速度が重要な局面でGCが発生してしまうと速度を落としてしまう現象が発生してしまいます