Hey,
ich habe folgenden Code:
Delphi-Quellcode:
procedure Thread2;
var
Data: Pointer;
Count: Cardinal;
begin
repeat
Data := ReadFromMMF('TestMapping2', SizeOf(Count));
if Assigned(Data) then
begin
Move(Data^, Count, SizeOf(Count));
if Count <= (GetTickCount + 50) then
begin
//Form1.Label2.Caption := IntToStr(Count);
Count := GetTickCount;
WriteToMMF('TestMapping1', @Count, SizeOf(Count));
end;
end;
GlobalFree(Cardinal(Data));
Sleep(30);
until Go2 = false;
end;
Im Taskmanager kann ich beobachten wie der Arbeitsspeicherverbrauch der Anwendung rapide konstant zunimmt. Kommentiere ich das Move aus, bekomme ich kein Leak mehr. Vergesse ich irgendwelchen Speicher wieder freizugeben?
Gruß Florian