1
VB.NET 3.5 Windowsアプリケーションのメモリリークを特定する最も良い方法は何ですか?SQL Server 2005を使用してVB.NET Windowsアプリケーションでメモリリークを確認
VB.NET 3.5 Windowsアプリケーションのメモリリークを特定する最も良い方法は何ですか?SQL Server 2005を使用してVB.NET Windowsアプリケーションでメモリリークを確認
ウィンドウハンドルがリークするのは、Winformsアプリケーションの一般的な不具合です。削除されたコントロールでDispose()を呼び出すことなく、Controls.Clear()またはControls.Remove()を呼び出すことによって誘導されます。 Taskmgr.exeの[プロセス]タブでトラブルシューティングを行うことができます。ビュー+列を選択して、USERオブジェクト、GDIオブジェクト、およびハンドルをチェックします。アプリの実行中にこれらの列の値を観察します。 USERオブジェクトが着実に登るのを確認したら、必要に応じてコントロール上でDispose()を呼び出していません。登りGDIオブジェクトは、あなたが処分しないビットマップになる傾向があります。
これがパンしないと、メモリプロファイラが次のリソースになります。まともなものにお金を使う。
いくつかの質問:なぜメモリリークがあると思いますか? COMオブジェクトを使用していますか?どのバージョンのVSを使用しますか? –
VS 2008の理由は、アプリケーションのフォーム上では、ますます多くの人々がアクセスしようとすると、実際には遅くなる傾向があるからです。 – Amit
おそらく人々はすべて1台のコンピュータに座っているわけではありません。それがWinformsアプリの場合、「より多くの人々」がそれぞれ自分のマシンで自分のメモリを使用しています。サーバーにメモリリークまたはスケーラビリティの問題があります。どのようにしてデータをあなたのアプリケーションに送りますか? – Bill