.NET Framework の使用に関するパフォーマンス規則
.NET Framework の使用カテゴリのパフォーマンス規則は、最適化の対象となるメソッドを特定し、パフォーマンスの問題について調査の対象となる一般的な使用パターン (ガベージ コレクションやロック競合など) も特定します。
String.Concat(String, String) の呼び出しがプロファイル データの大きな割合を占めています。StringBuilder クラスを使用して、複数のセグメントからの文字列を連結することを検討してください。 |
|
比較的多くの .NET メモリ オブジェクトが、ジェネレーション 2 のガベージ コレクションで再利用されています。有効期間が短いオブジェクトの多くがジェネレーション 1 のコレクションで収集されない場合、メモリ管理のコストが高くなる可能性があります。 |
|
Equals メソッドまたはパブリックの値型の等値演算子の呼び出しがプロファイル データの大きな割合を占めています。より効率的な方法を実装することを検討してください。 |
|
.NET Framework 例外ハンドラーの多くの部分がプロファイル データで呼び出されました。他の制御フロー ロジックを使用して、スローされる例外の数を減らすことを検討してください。 |
|
型の GetHashCode メソッドの呼び出しがプロファイル データの大きな割合を占めているか、GetHashCode メソッドがメモリを割り当てています。このメソッドの複雑さを軽減してください。 |
|
型の CompareTo メソッドの負荷が高くなっているか、このメソッドがメモリを割り当てています。CompareTo メソッドの複雑さを軽減してください。 |
|
System.Reflection メソッド (InvokeMember や GetMember など)、または Type メソッド (InvokeMember など) の呼び出しが、プロファイル データの大きな割合を占めています。可能な場合は、事前バインディングを使用するこれらのメソッドを、依存アセンブリのメソッドに置き換えることを検討してください。 |
|
String.Split メソッドまたは Substring メソッドの呼び出しがプロファイル データの大きな割合を占めています。文字列内に部分文字列が存在することをテストする場合は、IndexOf または IndexOfAny を使用することを検討してください。 |
|
プロファイリングの実行中に収集されたシステム データは、.NET Framework メモリ ヒープが 32 ビット プロセスのマネージ ヒープの到達可能な最大サイズに達したことを示しています。.NET メモリ プロファイル方法を使用してもう一度プロファリングを実行し、アプリケーションによるマネージ リソースの使用を最適化してください。 |
|
比較的多くの .NET メモリ オブジェクトが、ジェネレーション 1 のガベージ コレクションで再利用されています。有効期間が短いオブジェクトの多くがジェネレーション 0 のコレクションで収集されない場合、メモリ管理のコストが高くなる可能性があります。 |
|
多数の .NET メモリ オブジェクトが、ジェネレーション 2 のガベージ コレクションで再利用されています。有効期間が短いオブジェクトの多くがジェネレーション 1 のコレクションで収集されない場合、メモリ管理のコストが高くなる可能性があります。この規則は、ロック競合の比率が規則 DA0005 の上限のしきい値を超えた場合に適用されます。 |
|
プロファイリングの実行中に収集されるシステム パフォーマンス データは、ガベージ コレクションで費やされた時間がアプリケーション全体の処理時間と比較して長いことを示しています。 |
|
プロファイリングの実行中に収集されたシステム パフォーマンス データは、ガベージ コレクションで費やされた時間がアプリケーション全体の処理時間と比較して非常に長いことを示しています。この規則は、ガベージ コレクションで費やされた時間が規則 DA0023 の上限のしきい値を超えた場合に適用されます。 |
|
プロファイル データを使用して収集したシステム パフォーマンス データは、アプリケーションの実行中に高率のロック競合が発生したことを示しています。競合の原因を見つけるために、同時実行プロファイル方法を使用して、プロファイリングを再度実行することを検討してください。 |
|
プロファイル データを使用して収集したシステム パフォーマンス データは、アプリケーションの実行中に極端に高率のロック競合が発生したことを示しています。競合の原因を見つけるために、同時実行プロファイル方法を使用して、プロファイリングを再度実行することを検討してください。この規則は、ロック競合の比率が規則 DA0038 の上限のしきい値を超えた場合に適用されます。 |