Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
Delphi 12 Athens
|
AW: TIniFile und Terminal-Server
15. Nov 2013, 12:23
Einfach mal mehrere Programme/Threads mit diesem Code ausführen und die 10 Minuten warten, ob es knallt.
Delphi-Quellcode:
with TIniFile.Create(' text.ini') do
try
Ident := ' Ident' + IntToStr(GetCurrentThreadId);
Start := GetTickCount;
Errors := 0;
Counter := 0;
while GetTickCount - Start < 1000*60*10 do begin // 10 Minuten testen
WriteInteger(' Section', Ident, Counter);
Value := ReadInteger(' Section', Ident, -1);
if Value <> Counter then
Inc(Errors);
Inc(Counter);
end;
if Errors <> 0 then
raise Exception.CreateFmt(' %d Errors', [Errors]);
finally
Free;
end;
oder
Delphi-Quellcode:
with TIniFile.Create(' text.ini') do
try
Ident := ' Ident' + IntToStr(GetCurrentThreadId);
Start := GetTickCount;
Value := ReadInteger(' Section', Ident, 0); // richtiger Startwert, falls es diese Datei schon gibt.
Counter := Value;
while GetTickCount - Start < 1000*60*10 do begin // 10 Minuten testen
Value := ReadInteger(' Section', Ident, 0);
WriteInteger(' Section', Ident, Value + 1);
Inc(Counter);
Sleep(Random(100));
end;
if Value <> Counter then
raise Exception.CreateFmt(' Error (%d <> %d)', [Value, Counter]);
finally
Free;
end;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
|
|
Zitat
|