2017-04-11 30 views
1

フィードバックシステムがCPUを絞っているかどうかに基づいて動作を変更するには、その場で全CPU使用率を取得する必要があります。このために、私は、任意の時点でシステム情報を提供しNtQuerySystemInformation SYS呼び出しに見えたが、MSDNのページが言うので、この機能は、Windowsの最新バージョンでは廃止されているように思えるC++でWindowsからシステム全体のCPU使用率を取得する方法は?

[NtQuerySystemInformationが変更されたかでは使用できませんすることができます将来の バージョンのWindows。アプリケーションは、このトピックに記載されている代替機能 を使用する必要があります]

参考:https://msdn.microsoft.com/en-us/library/windows/desktop/ms724509(v=vs.85).aspx

誰もがOSのバージョンこの呼び出しが上のサポートされているものを知っていますか?勝利7/8/8.1/10? CPU使用率を直接取得する方法はありますか?

+0

参考:[プロセス内のCPUとメモリの消費量を調べる方法](http://stackoverflow.com/questions/63166/)どのようにしてCPUとメモリを消費するかをプロセス内から判断する)恐らく、詐欺師であっても、近い投票にふさわしいとは思えないほどです。 – user4581301

答えて

1

公式には、MSDNには2つの機能があります。

  1. GetSystemTimes():もっと簡単に見えますが、ずっと前に投稿しました。 https://msdn.microsoft.com/en-us/library/windows/desktop/ms724400(v=vs.85).aspx

  2. GetSystemInfo():私はhttps://code.msdn.microsoft.com/windowsdesktop/Use-PerformanceCounter-to-272d57a1

    DWORD GetProcessorCount() 
    { 
         SYSTEM_INFO sysinfo; 
         DWORD dwNumberOfProcessors; 
         GetSystemInfo(&sysinfo); 
         dwNumberOfProcessors = sysinfo.dwNumberOfProcessors; 
         return dwNumberOfProcessors; 
    } 
    vector<PCTSTR> GetValidCounterNames() 
    { 
        vector<PCTSTR> validCounterNames; 
        DWORD dwNumberOfProcessors = GetProcessorCount(); 
        DWORD index; 
        vector<PCTSTR> vszProcessNames; 
        TCHAR * szCounterName; 
        validCounterNames.push_back(TEXT("\\Processor(_Total)\\% Processor Time")); 
        validCounterNames.push_back(TEXT("\\Processor(_Total)\\% Idle Time")); 
        // skip some codes 
        return validCounterNames; 
    } 
    

グッドラックからサンプルコードを持っています!

私の意見では、Windowsのコマンド "tasklist/v"は、OSからCPU TIMEとMEMORYを表示し、 'システム'または他の機能を通じてコマンドを呼び出すことができます。

PS。私はまだOS側を見ることがCPU使用率を監視する最良の方法だと思います。 (私がこの関数を使うと、内部でも同じことが起こります)。

+0

リンクを要約するか、またはリンクが壊れたときに将来の読者がコンテンツを再度見つけ出すのに十分な形を提供することを強くお勧めします。 – user4581301

+0

あなたは正しいです。私はそこにいくつかの情報を加えました。 –

+0

'tasklist/v'はCPU使用率を表示しません。 「CPU時間」はCPU使用率と同じではありません。 – indiv

関連する問題