.NET 4.5 を使用して C# でプログラムを作成しています。これにより、特定のプロセスのメモリ、CPU、およびネットワークの使用状況を監視し、必要に応じてそのデータをグラフ化できます。
特定のプロセスのメモリ使用量を取得するために、そのオブジェクトのPrivateMemorySize64
プロパティをチェックしています。Process
そのプロセスで使用されているプライベート メモリが表示されることを期待していますが、代わりに、Windows リソース モニターで確認されているように、コミットに量が表示されています。
私の質問は次のとおりです。
1) このエラーが発生する理由を知っている人はいますか? 2)それに対する修正はありますか?3) 修正しない場合、プロセス用に予約されたプライベート メモリを取得できる別の簡単な方法はありますか?
私のコードの関連部分は次のとおりです。
using System;
// I add all the open Processes to an array
Process[] localAll = Process.GetProcesses();
// I then add all the processes to a combobox to select from
// There's a button that updates labels with requested info
Process[] p = Process.GetProcessesByName(comboBox1.SelectedItem.ToString());
label1.Text = p[0].PrivateMemorySize64.ToString() + " bytes";