アプリケーションに必要なメモリ量とプロセッサ パワーを取得する方法はありますか? 最近、私のアプリケーションの 1 つが動作しているコンピューターをフリーズさせ続けたとき、非常に不快な経験をしました。これは明らかにハードウェア能力の不足に関連しています。なぜなら、アプリケーションが完全に機能するテスト目的で使用したより強力なコンピューターで完全に機能するからです。私の質問は、アプリケーションをスムーズに実行するために必要なハードウェアの電力量を計算する方法はありますか? ほとんどすべてのアプリケーションは C# で作成されているため、そのタイプのアプリケーションで動作するメソッドが必要です。ありがとう
3 に答える
これは明らかにハードウェアの能力不足に関連しています
これは、アプリケーションが何をしているかに完全に依存します。「あまり時間効率の悪い方法」で問題を解決している場合は、コードを最適化できます。
プロファイラーでコードを分析することをお勧めします。
これにより、次のことがわかります。
- コードのどの部分が最も RAM/CPU を占有しているか
- ピーク時にアプリケーションが必要とした RAM の合計量
- CPU 消費に関する情報
これは明らかにハードウェア能力の不足に関連しています。なぜなら、私がテスト目的で使用したより強力なコンピューターで完全に動作するからです。
テストを設定した人は誰でも解雇されるべきです。
アプリケーションをテスト用に実行するのと同様のコンピューターのセットを 1 つ用意する必要があります。それは 20 年前に受け入れられた習慣でしたが、現代では気にしていないようです。
真剣に、受け入れられている最低のハードウェア レベルを代表するテスト セットが必要です。
そうでなければ - いいえ、申し訳ありませんが、魔法のボタンはありません。プロファイラーは必ずしも役に立ちません (デバッグ、プロファイラーはより多くのメモリを使用する場合があります)。プロファイラーを試してください。コードを最適化します。しかし、最終的には...適切なテストベッドが必要です。
これは、ソフトウェアのインストール中にチェックする必要があると思います。後で、ユーザーがハードウェアを更新するように求められ、警告を無視した場合は、気にする必要はありません。
Windows インストーラー (MSI) を使用している場合は、カスタム アクションを試したり、System.Management
クラスを使用して必要なものを検出したりできます。