Delphi, Arbeisspeicher Belegung ermitteln

Februar 13th, 2007 Autor: Phillip Kroll -

Borland DelphiFolgende Methode gibt an, wie viel Arbeitsspeicher ein Programm belegt. Der Rückgabewert ist in Bytes. Es empfiehlt sich also noch eine Umrechnung in KBytes oder MBytes.

function ProcessMemory : double;
var
pmc: PPROCESS_MEMORY_COUNTERS;
cb: Integer;
MemStat: tMemoryStatus;
begin

Result := 0;
MemStat.dwLength := SizeOf(MemStat);
GlobalMemoryStatus(MemStat);
cb := SizeOf(TProcessMemoryCounters);
GetMem(pmc, cb);
pmc^.cb := cb;

if GetProcessMemoryInfo(GetCurrentProcess(), pmc, cb) then
Result := Longint(pmc^.WorkingSetSize);

FreeMem(pmc);

end;

Ein Beispielaufruf wäre:

Showmessage( FormatFloat( '0.00', ProcessMemory / 1024 / 1024 ) + ' MByte belegt' );

Benötigte Units: PsAPI;

Bisher keine Kommentare für diesen Eintrag...

0 response(s) to Delphi, Arbeisspeicher Belegung ermitteln

    Kommentare sind für diesen Beitrag geschlossen.