0

これは、グラフィックスにOpenGLを使用し、アプリケーションにSDLを使用してC++で作業している最初の「ゲーム」です。機能的なアプリケーションウィンドウを作成し、Devil Textureライブラリを使用してテクスチャを完全にロードおよび描画できるため、コードは機能しているように見えます。問題は実行時に発生します。Windowsタスクマネージャによると、私のメモリ使用量は約13,900から始まりますが、4分ほどで約15,000に着実に増加し、その後停止します。これは正常ですか?Windowsタスクマネージャはメモリを表示する方法が不正確ですか?

4

2 に答える 2

2

コード内のメモリリーク、つまり解放されていないポインタなどである可能性があります。

Linuxでは、Valgrindを使用して実行時にこれをチェックします。Windowsの場合と同等のものが何であるかわかりません。この投稿は、同等のツールを見つけるための正しい方向を示しているはずです

乾杯

于 2010-03-22T12:24:23.447 に答える
1

アプリの実行中に動的メモリ割り当てと割り当て解除を行っている場合は、メモリを断片化している可能性があり、断片化の周りのすべての「スロップ」を処理するためにそれだけの量が必要です。

以前、 http: //www.fluidstudios.com/のMMGRパッケージを使用して、メモリ使用量を追跡しました。基本的に、プログラム内のすべての割り当てに関する優れた情報をダンプできるため、フレームごとに追跡して、何が起こっているかを確認できます。

幸運を。

于 2010-03-23T17:52:53.157 に答える