特定のプロセスを監視し、CPU とメモリの使用率を折れ線グラフにプロットする WPF アプリがあります。CPU% とメモリの値は、パフォーマンス カウンター クラス C# を使用して読み取られます。グラフは、フェッチされた値に従って手動で線を描画しているUserControl
を含むです。Canvas
現在、各グラフで Dispatcher タイマーを使用してUserControl
おり、各ティックで新しい値を取得してプロットしています。
問題は、監視するプロセスを追加するにつれて、多くの更新が行われるため、アプリが CPU を消費することです。
私が試みていることを達成するためのより良い方法は何ですか? 各プロセスの詳細は個別のタブにあり、ロードされたときにのみ初期化されますが、連続したプロットが必要なため、タブが表示されていないときにプロットを停止することはできません。
これを行うより良い方法はありますか?