![]() |
Speicherleck in TIdSNTP??
Hallo,
laut FastMM bleiben nach dem Aufruf der folgenden Prozedur 1 TIdThreadSaveInteger und 2 TIdCriticalSection im Speicher übrig:
Delphi-Quellcode:
Ist das tatsächlich ein Speicherleck oder mache ich "nur" irgendwas falsch??
procedure LoginSpeichern(DataSet: TAdoDataSet; UserId: Integer; Pause: Double;
PauseVon, PauseBis: TTime; const SyncSysTime: Boolean = False); var Day, Month, Year: Word; TimeServer: TIdSNTP; Jetzt: TDateTime; ServerID: Integer; Fehler: Boolean; begin Jetzt := Now; Fehler := False; Randomize(); ServerID := Random(High(ServerPool) - 1); TimeServer := TIdSNTP.Create(nil); with TimeServer do begin ReceiveTimeout := 1000; try try Host := ServerPool[ServerID]; Connect; //repeat until Connected; Jetzt := DateTime; if SyncSysTime then try if not SyncTime then MessageBox(0, AtomicTime02, MsgError, MB_ICONWARNING or MB_OK or MB_APPLMODAL); except MessageBox(0, AtomicTime03, MsgError, MB_ICONWARNING or MB_OK or MB_APPLMODAL); end; except Fehler := True; end; finally //Disconnect; //Free; Destroy; end; end; if Fehler then begin Jetzt := Now; MessageBox(0, AtomicTime01, MsgError, MB_ICONWARNING or MB_OK or MB_APPLMODAL); end; Year := 0; Month := 0; Day := 0; DecodeDate(Jetzt, Year, Month, Day); with DataSet do begin Close; with Parameters do begin ParamValues['pUser'] := UserID; ParamValues['pTag'] := Day; ParamValues['pMon'] := Month; ParamValues['pJahr'] := Year; end; Open; if (RecordCount = 0) then begin Append; FieldByName('Benutzer').AsInteger := UserID; FieldByName('Login').AsDateTime := Jetzt; FieldByName('Tag').AsInteger := Day; FieldByName('Monat').AsInteger := Month; FieldByName('Jahr').AsInteger := Year; end else begin First; Edit; if (FieldByName('Login').AsVariant <> NULL) then begin FieldByName('Zeit').AsFloat := CalcArbeitszeit(FieldByName('Login').AsDateTime, Jetzt, PauseVon, PauseBis, Pause); end; FieldByName('Logout').AsVariant := null; end; Post; Close; end; end; |
Re: Speicherleck in TIdSNTP??
Liest du
![]() |
Re: Speicherleck in TIdSNTP??
Danke für den Hinweis
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:36 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz