windows - Få maksimal mængde hukommelse, der bruges af et C-program

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg startede for nylig med at programmere i C. Hvad jeg skal gøre, er at finde den maksimale mængde hukommelse, der bruges af et program gennem hele levetiden af ​​processen. Hvordan kan jeg gøre det nemt på Windows? Dybest set et værktøj i form af:


> memoryused myprogram.exe
> peak amount of memory used: 36 bytes


Jeg behøver virkelig ikke spore hukommelsesforbrug på et givet tidspunkt under udførelsen af ​​processen.

Bedste reference


til dette skal du bruge GetProcessMemoryInfo [3]

Andre referencer 1


På Windows kan du bruge CRT Debug Heap til at tage snapshots af heap state, herunder mængden af ​​hukommelse, der bruges. Dette rapporterer ikke den maksimale høje mængde, der er brugt, men ved at tage snapshots ved regelmæssige indmeldinger, kan du få en indikation af din høje brugen. Dette rapporterer heller ikke den maksimale mængde stak, der anvendes.


Se også https://msdn.microsoft.com/en-us/library/h3z85t43.aspx[4]