2017-10-19 43 views
1

C#でプロセスの「コミットサイズ」(Windowsタスクマネージャ>詳細)を取得する必要があります。タスクマネージャでのプロセスのコミットサイズC#

enter image description here

一見Processクラスは、関連するプロパティを提供していません。 誰かが私を助けることができますか?

編集私のコミット計算されたサイズとタスクマネージャの 'コミットサイズ' の違いがあり

private static void ShowCommitSize(string processName) 
    { 
     Process process = Process.GetProcessesByName(processName).FirstOrDefault(); 
     if (process != null) 
     { 
      var pagedMemMb = ConvertBytesToMegabytes(process.PagedMemorySize64); 
      Console.WriteLine(process.ProcessName + "\t" + process.Id + "\t" + Math.Round(pagedMemMb, 3) + " MB"); 
     } 
     Console.ReadLine(); 
    }  

    static double ConvertBytesToMegabytes(long bytes) 
    { 
     return (bytes/1024f)/1024f; 
    } 

出力

。何か案は?

enter image description here

ソリューション

private static void ShowCommitSize(string processName) 
    { 
     var process = Process.GetProcessesByName(processName).FirstOrDefault(); 
     if (process != null) 
     { 
      var memKb = ConvertBytesToKilobytes(process.PagedMemorySize64); 
      Console.WriteLine(process.ProcessName + "\t" + process.Id + "\t" + memKb.ToString("N") + " K"); 
     } 
     Console.ReadLine(); 
    }  

    static double ConvertBytesToKilobytes(long bytes) 
    { 
     return (bytes/1024f); 
    } 
+0

[利用可能なページファイルサイズ/仮想メモリ](https://stackoverflow.com/questions/14590162/available-pagefile-size-virtual-memory)の可能な複製 – Martheen

答えて

2

この値は、PagedMemorySize64財産です。ドキュメントには、この "ページファイルサイズ"プロセスのパフォーマンスカウンタとhere以上が、Vista/2008のタスクマネージャで「コミットサイズ」と呼ばれていることが記録されています(新しいOSを想定しています)。

+0

ありがとう!私は自分の質問を編集し、PagedMemorySize64プロパティを使用しました。計算されたコミットサイズとタスクマネージャに表示される値との間には相違があります。何か案は? – BertAR

+0

@BertARあなたは相違点のどの部分を尋ねていますか? 124552Kb = 121.6Mb。あなたは0.6 Mbについて尋ねていますか、または誤ってkBとMbを比較していますか?スクリーンショット間で値が変わったのですか? –

+0

迅速な返信をありがとう!確かに私の変換は間違っていました。良い一日を。 – BertAR

関連する問題