1

時間が経つにつれて(アクティブに実行されている間)、ますます多くのメモリを使い続けるアプリケーションがありますが、リークはありません。したがって、プログラムが完全に間違ったことを行っているわけではないことはわかっています。これは簡単に見つけることができます。

代わりに、問題の追跡を開始できるように割り当てを追跡したいと思います。Mac では、どのオブジェクトが誰によって割り当てられたかの詳細なプロファイルを提供する Instruments を使用しますが、Windows では何を使用しますか?

現在、VS2005 を使用して、Windows XP で C/C++ を使用しています。したがって、このセットアップ用のツールはどれも素晴らしいものであり、必要に応じて購入 (企業のもの) を完了するのに時間がかかり、締め切りがあるため、無料のツールまたは少なくとも数週間の試用版を提供するツールがあればよいのですが。

ありがとう!

編集:私はVLDを使用しているので、プログラムにリークがないことはわかっていますが、必要以上のメモリを占有していて、返されていないようです。したがって、リークではなく割り当てを追跡する必要があります。

4

3 に答える 3

2

メモリバリデーターはあなたにとって理想的です。 http://www.softwareverify.com/cpp/memory/index.html

于 2009-04-09T03:07:32.120 に答える
1

グローコードはこちらです。それは世界で最悪のユーザーインターフェースを持っています。あなたがそれを正しく機能させようとしている恐怖を乗り越えて苦労する忍耐力を持っているなら、内部にはそれがあります。21日間の無料トライアルがあります。私はそれが命の恩人であるとわかりました、しかしあなたは本当にそのバグを見つけたいと思う必要があります。

于 2009-04-09T03:01:08.750 に答える
0

VisualStudioによるメモリリーク検出の有効化

メモリリークを検出するための主要なツールは、デバッガとCRTデバッグヒープ機能です。デバッグヒープ機能を有効にするには、プログラムに次のステートメントを含めます。

#define CRTDBG_MAP_ALLOC
#include <stdlib.h>
#include <crtdbg.h>

http://msdn.microsoft.com/en-us/library/e5ewb1h3(VS.71).aspx

于 2009-04-09T03:05:46.443 に答える