AW: Memory leak durch funktion readln
Zitat:
Delphi-Quellcode:
Abgesehen von der nicht umwerfenden Geschwindigkeit, gibt es da keine Probleme! Wenn Du Probleme hast, dann ist die Frage wie kommst Du überhaupt darauf?
procedure sterb_schleife;
var quell_dat, grossdatei: text; quelldatname : string; zeile : string; zaehler_gesamt : integer; begin assign(grossdatei, 'c:\temp\'+ 'big.txt'); rewrite(grossdatei); quelldatname := 'test.TXT'; assign(quell_dat, 'c:\temp\' + quelldatname); reset(quell_dat); while not eof(quell_dat){zaehler_gesamt<1200000} do begin readln(quell_dat, zeile); Writeln(grossdatei, zeile); inc(zaehler_gesamt); (* if ((zaehler_gesamt mod 1000) = 0) then dsnr.strings[1] := inttostr(zaehler_gesamt); *) end; flush(quell_dat); close(quell_dat); flush(grossdatei); close(grossdatei); end; Zitat:
Gruß K-H |
AW: Memory leak durch funktion readln
Zitat:
dann "läuft der arbeitsspeicher voll, also das sehe ich daran, dass der grüne balken im ressourcen monitor unter memory der für in use steht immer weiter anwächst. |
AW: Memory leak durch funktion readln
Zitat:
Ist der Speicher wieder frei nach dem Close und ein bisschen Wartezeit? Mavarik |
AW: Memory leak durch funktion readln
Du kannst seine Sterb_schleife 10 mal hintereinander ausführen und der Speicherbedarf ist nach der Ausführung nicht gestiegen. Insofern ist die Bezeichnung "Leak" irreführend.
Es geht nur um den immer weiter steigenden Speicherbedarf innerhalb der Schleife. |
AW: Memory leak durch funktion readln
Zitat:
|
AW: Memory leak durch funktion readln
Zitat:
|
AW: Memory leak durch funktion readln
Zitat:
Oder sagt Reportmemoryleaksonshutdown etwas anderes? |
AW: Memory leak durch funktion readln
Ich glaube eher dass es, egal ob ReadLn, TStreamReader oder sonst was, es nicht am Code, sondern an den Daten liegt. Ich habe bei meiner "steigt immer weiter an"-Aussage vergessen zu erwähnen dass ich das mit einer Testdatei mit einer 300MB langen Zeile versucht habe. Wenn man ein paar Millionen kleine Zeilen untereinander macht ist die sterb_schleife auch vollkommen ok und steigt kein KB im Speicherbedarf.
Oder hast du ein paar Zeilen um eine Testdatei zu erzeugen wie sie bei dir normalerweise aussehen? |
AW: Memory leak durch funktion readln
Zitat:
aber gute idee das mal zu testzwecken mit anderer zeilen länge zu versuchen |
AW: Memory leak durch funktion readln
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:22 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz