.NET 2.0とネイティブC++が混在するアプリケーションがあります。テストでは、一連のプロジェクトを自動的にループするモードがあります。プロジェクトが開き、実行され、終了し、繰り返されます。これらの各ステップでは、ウィンドウの作成/削除(正確にはwinforms)が必要です。最近、私たちはパフォーマンスにおいて幾分奇妙な行動を経験しました。数時間運転した後、開閉部品が減速します(GUIスレッドをブロックし、画面の半分を表示するなど)。これでリソースリークが発生するのは簡単ですが、ハンドルとメモリを追跡していますが、メモリがわずかに増加する間にこのレベルの問題を示すものはありません。ハンドルは安定しています。だから多分、イベントハンドラをぶら下げて...それでも調査する必要がある。しかし、私を困惑させるキッカーは、アプリケーションをシャットダウンして再起動しても、最初のパフォーマンスが戻ってこないということです。私はOSを再起動するまではまだ遅いですが(XPに勝つ)、パフォーマンスは再びうまく始まります。これは、アプリケーションをシャットダウンしてすべてのリソースを取り戻すことを前提としているので、私は本当に困惑しています。何かご意見は?アプリケーションでの奇数のパフォーマンスの低下
答えて
私たちは、あなたが減速する前と後のプロファイラーの下でアプリケーションを実行し、2つの結果を比較する必要があるウィンドウクラス
GDIハンドルリークの可能性があります。 GDI objectsはガベージコレクタによって自動的に選択されません。
.NETメモリプロファイラ(http://memprofiler.com/)は、これらを追跡するうえで役立ちます(14日間の試用版があります)。 (GDIハンドルビューアツールへのリンクがあります)
私はメモリプロファイラの使用を2回目にします。スナップショットを撮って比較することができます。そのため、ある反復でスナップショットを撮り、次のスナップショットで別のスナップショットを撮り、それらを比較することができます。 – stusmith
私は.NET Memory Profilerを持っていますが、アプリケーションを再起動しても問題が解決されないという事実は、プロセスの成長の何ものによっても説明されません。 – user109078
GDIハンドルなどの特定の限られたシステムリソースには当てはまりません。 –
あなたはリソースリーク(悪い推測ではない)を想定していますが、それは別のものかもしれません。
パフォーマンスプロファイラを試しましたか?
- 1. アプリケーションのパフォーマンスが低下する
- 2. BCryptパフォーマンス低下
- 3. XNAのパフォーマンスの低下GameStateManagement
- 4. CreateFile APIのパフォーマンス低下
- 5. @ServiceHost Debug = "true" - パフォーマンスの低下?
- 6. Netty 4パフォーマンス低下
- 7. SQLでレコードセットの数が増えるとアプリケーションのパフォーマンスが低下しますか?
- 8. Rのパフォーマンス低下の防止
- 9. 操作数の増加に伴うパフォーマンスの低下
- 10. ASP.NET Webアプリケーションの突然のパフォーマンス低下。 DBインデックスが必要ですか?
- 11. Perl:複数のファイルを読むとパフォーマンスが低下する
- 12. Javaでの予期しないパフォーマンスの低下
- 13. 巨大なパフォーマンスの低下 - 問題のベクトルですか?
- 14. iOS 9でのUIWebViewの主なパフォーマンス低下
- 15. SQL Serverのパフォーマンスが低下する原因は何ですか?
- 16. OpenGLではプログラムのパフォーマンスが低下しますか?
- 17. iphoneでplistファイルのパフォーマンスが低下するかどうか
- 18. AndroidでORMLiteのパフォーマンスが低下していますか?
- 19. SQLサーバーのパフォーマンスが低下する理由は何ですか?
- 20. MySqlsのパフォーマンスを低下させる原因は何ですか?
- 21. バックグラウンドサイズ:ChromeとSafariでカバーのパフォーマンスが低下しています
- 22. ウィンドウの電話7でパフォーマンスが低下するスロットル操作
- 23. Windows 7上のFileNet Visual WorkFlo - パフォーマンスの低下の解決?
- 24. 4.5.0から4.6.2への更新後のMinGW g ++のパフォーマンス低下
- 25. mysql 5.5のアップグレード - 大規模なパフォーマンスの低下
- 26. アクセスデータベースを分割した後のパフォーマンスの低下
- 27. if文によるC++の大規模なパフォーマンスの低下
- 28. Perlサブルーチンに引数を渡す際に、データコピーのパフォーマンスが低下しますか?
- 29. Django:多くのシグナルがパフォーマンスを低下させますか?
- 30. EF4モデルをEF5モデル(DbContext)にアップグレードした後のパフォーマンス低下
が漏れました。徹底的に違うものはすべて調査の価値がある。無料、または良い、または無料で良いプロファイラーの周りにたくさんあり、ちょうどいくつかを試し、あなたが快適であるものを選んでください。 – Rom