問題タブ [memory-leak-detector]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - Linuxのメモリリークチェックツールの問題
1)メモリリークツールと呼ばれるものもありますBoehmgc
か?そのツールは他のツールと比べてどうですか?
2)、、を使用LeakTracer
しmudflap
ましValgrind
た。しかし、残念ながら、LeakTracerにはメモリホギング(開始時に大量のメモリをプールしてから割り当てる)という欠点があります。そのため、代替手段は何ですか?
stack-trace - valgrind、AMD x64 で、有効なスタック情報が利用できない
valgrind を使用してメモリ リークをチェックすると、非常に奇妙な問題が発生します。32 ビット Linux では、リーク スタック情報は次のように非常に明確です。
しかし、x64 Linux では、 ???しか取得できません。このような情報:
valgrind FAQ にあるように、プログラムは dlopen/dlclose を使用しません。
更新 1、ファイルの統計情報を追加
どんなコメントでも大歓迎です!
python - Python3 用のワーキング メモリ プロファイラはありますか
Python 2 にはいくつかのツールがありますが、すべてが古くて時代遅れのようです。
PySizer と Heapy を見つけましたが、すべて Python2 指向のようで、移植には多くの労力が必要です。
objgraph は興味深いですが、まだ完全に機能するプロファイラーではありません
どのツールを使用していますか?
visual-studio - SDLメモリリークとビジュアルリークディテクタ
了解しました。私のプログラムでメモリリークが発生している可能性があります。これはSDLアプリケーションであり、リークを手動で特定するには大きくなりすぎたようです。Valgrindに相当するWindowsを探し回って(Windows 7 x64を実行していて、Visual Studio 2010を使用しています)、最終的にVisualLeakDetectorに出くわしました。残念ながら、それはay出力を生成したくないようです。
別のプロジェクト、空のコンソールアプリケーションをセットアップし、SDLアプリと同じ方法でVLDをセットアップしました。プログラムを実行すると、VLDは完全に機能し、私が投げたすべてのメモリリークを検出しました。ただし、SDLアプリでは、「VisualLeakDetectorバージョン2.2がインストールされています」と出力するだけです。main関数で意図的にメモリリークを作成した場合でも、デバッグセッションの開始時と他には何もありません。
私が知ることができる最も近いのは、プログラムのエントリポイントとのSDLのねじ込みに関係している可能性があります。しかし、それは単なる推測です。VLDをSDLで動作させる方法はありますか?
memory-management - サーバー - 実行中のスクリプトとそのメモリ使用量を把握する
非常に大きなアプリケーションを使用していますが、メモリ リークが発生しているように見えます。現在実行されているスクリプトとそのサイズを確認できる何らかのソフトウェアまたは何かがありますか? それが役立つ場合、私はApacheを使用しています。
ありがとう。
objective-c - Objective-Cでメモリリークをキャッチするための設計パターン?
Apple のメモリ管理ガイドを読み、アプリケーションで適切なメモリ管理を行うために従うべきプラクティスを理解していると思います。
現在、コードにメモリ リークはないようです。しかし、コードが複雑になるにつれて、オブジェクトの割り当てと割り当て解除を追跡するために従うべき特定のパターンがあるかどうか疑問に思います。
タイプのアクティブなオブジェクトの数のカウントを含む、アプリケーションの実行全体に存在するある種のグローバル オブジェクトを作成することは理にかなっていますか? 各オブジェクトは、init メソッドでそのタイプのカウントをインクリメントし、dealloc でデクリメントできます。グローバル オブジェクトは、特定のタイプのカウントがゼロかそうでないかを適切なタイミングで確認できます。
編集: リークの使用方法と、Xcode を使用してプロジェクトを分析する方法も認識しています。この投稿の理由は、リークによって検出されない、または簡単に分析できないケースを追跡することです。
編集: また、グローバル オブジェクトをチェックする単体テストを実行することにより、ビルドでリークを早期に検出できるように、このようなものを用意することは理にかなっているようです。私は、経験の浅い客観的な c プログラマとして、これに関する他の人の意見から恩恵を受けると思います。
c - Cプログラムでメモリリークを検出していますか?
C++ プログラムでメモリ リークをチェックしたい場合は、new
anddelete
演算子をオーバーロードして、割り当てられたメモリを追跡できます。C プログラムのリークをチェックしたい場合はどうすればよいでしょうか? C には演算子のオーバーロードがないため、関数ポインターを上書きしてmalloc
呼び出しをインターセプトしmalloc
、メモリ割り当てを追跡できますか? 外部ユーティリティを使用せずに簡単な方法はありますか? メソッドポインターの上書きに慣れていないので、コードを提供してください。
注:練習用の外部ユーティリティなしでこれを行いたいと思います。
c++ - アプリケーションのメモリリークをどのように追跡しますか?
モバイルデバイスで実行する大規模なアプリケーションがあります。C++で記述されており、UIはQTを使用して構築されています。
モバイルデバイスでQTアプリケーションを実行しているときにメモリリークをチェックするために実行できるユーティリティを知っていますか?
c++ - デーモンプログラムでメモリチェックを行う方法は?
手動で終了するまで永久に実行される C++ アプリケーションを作成しました。他の重要なアプリケーションを監視します。その結果、デーモン アプリケーションがダウンすることはありません。それを念頭に置いて、アプリケーションにメモリ リークがあるかどうかを確認したいと考えています。valgrind を使用しましたが、このアプリケーションは永久に実行され続けるため、valgrind は終了しません。コントロール - C を実行すると、valgrind ログファイルから完全な情報が得られません。
Valgrind と同じことができるツールはありますか?
c++ - 新しい式`new(std :: nothrow)`にMSリークディテクタを使用できないようです。あれは正しいですか?
新しい式でリークが発生しているファイルと行を取得しようとしていますnew (std::nothrow)
。
以下のコードでコメント化された新しい式はコンパイルされません。
<iostream>
また、どこにが含まれているのか知りたいです<crtdbg.h>
。見つかりませんでした。しかしもちろん、それはどこかにあるに違いありません。