C++ 如何获得gcc mingw编译的进程的最大内存使用率

C++ 如何获得gcc mingw编译的进程的最大内存使用率,c++,windows,mingw,C++,Windows,Mingw,我已经搜索了三天了,但是我找不到任何信息。(我尝试了其中一些方法,例如GetProcessMemoryInfo,但没有成功) 请给我一些建议。谢谢:) 我尝试了其中一些方法,例如GetProcessMemoryInfo,但没有成功 以下内容基于,适用于我: #include <windows.h> #include <stdio.h> #include <psapi.h> int main() { HANDLE hProcess; PROCE

我已经搜索了三天了,但是我找不到任何信息。(我尝试了其中一些方法,例如
GetProcessMemoryInfo
,但没有成功)

请给我一些建议。谢谢:)

我尝试了其中一些方法,例如
GetProcessMemoryInfo
,但没有成功

以下内容基于,适用于我:

#include <windows.h>
#include <stdio.h>
#include <psapi.h>

int main() {
    HANDLE hProcess;
    PROCESS_MEMORY_COUNTERS pmc;

    hProcess = OpenProcess(PROCESS_QUERY_INFORMATION |
                           PROCESS_VM_READ,
                           FALSE, GetCurrentProcessId() );
    if (NULL != hProcess) {
        if ( GetProcessMemoryInfo( hProcess, &pmc, sizeof(pmc)) ) {
            printf( "PeakWorkingSetSize: 0x%08X\n", pmc.PeakWorkingSetSize );
            printf( "WorkingSetSize: 0x%08X\n", pmc.WorkingSetSize );
            // ... add other members from pmc, as needed ...
        }
        CloseHandle( hProcess );
    }
}
#包括
#包括
#包括
int main(){
处理hProcess;
进程\内存\计数器pmc;
hproces=OpenProcess(进程\查询\信息|
进程_VM _READ,
FALSE,GetCurrentProcessId());
if(NULL!=hProcess){
if(GetProcessMemoryInfo(hProcess,&pmc,sizeof(pmc))){
printf(“PeakWorkingSetSize:0x%08X\n”,pmc.PeakWorkingSetSize);
printf(“WorkingSetSize:0x%08X\n”,pmc.WorkingSetSize);
//…根据需要从pmc添加其他成员。。。
}
CloseHandle(hProcess);
}
}
编译并链接到
g++-o procinfo procinfo.cpp-lpsapi

我尝试了其中一些方法,例如
GetProcessMemoryInfo
,但没有成功

以下内容基于,适用于我:

#include <windows.h>
#include <stdio.h>
#include <psapi.h>

int main() {
    HANDLE hProcess;
    PROCESS_MEMORY_COUNTERS pmc;

    hProcess = OpenProcess(PROCESS_QUERY_INFORMATION |
                           PROCESS_VM_READ,
                           FALSE, GetCurrentProcessId() );
    if (NULL != hProcess) {
        if ( GetProcessMemoryInfo( hProcess, &pmc, sizeof(pmc)) ) {
            printf( "PeakWorkingSetSize: 0x%08X\n", pmc.PeakWorkingSetSize );
            printf( "WorkingSetSize: 0x%08X\n", pmc.WorkingSetSize );
            // ... add other members from pmc, as needed ...
        }
        CloseHandle( hProcess );
    }
}
#包括
#包括
#包括
int main(){
处理hProcess;
进程\内存\计数器pmc;
hproces=OpenProcess(进程\查询\信息|
进程_VM _READ,
FALSE,GetCurrentProcessId());
if(NULL!=hProcess){
if(GetProcessMemoryInfo(hProcess,&pmc,sizeof(pmc))){
printf(“PeakWorkingSetSize:0x%08X\n”,pmc.PeakWorkingSetSize);
printf(“WorkingSetSize:0x%08X\n”,pmc.WorkingSetSize);
//…根据需要从pmc添加其他成员。。。
}
CloseHandle(hProcess);
}
}

编译并链接到
g++-o procinfo procinfo.cpp-lpsapi

我想你之前已经发布过了。你能详细说明一下
GetProcessMemoryInfo
是如何工作的吗?除非你这么做,否则就没有什么可期待的了。我想你已经提前发布了。你能详细说明一下
GetProcessMemoryInfo
是如何工作的吗?除非你去做,否则没有什么可期待的。