Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Freier Speicher in Delphiprogrammen ermitteln? (https://www.delphipraxis.net/169325-freier-speicher-delphiprogrammen-ermitteln.html)

Mavarik 18. Jul 2012 19:41

AW: Freier Speicher in Delphiprogrammen ermitteln?
 
Zitat:

Zitat von tgvoelker (Beitrag 1174891)
Da Du 256MB-Blöcke allokierst, geht das solange, bis kein Segment mehr da ist, das 256 MB groß ist.

Nein das war nur für den Test...

Ich programmiere eine Dateiverwaltung die Freelisten, Dirs, Datensegmentlisten usw. in TByteDynArray speichert, die an dauernd erzeugt, vergrößert und wieder verkleinert werden...

Unzählge Setlength Befehle nach 10 Min. Müsste der Speicher eigentlich aussehen wie Schweizer Käse...

Was ich auf keinen Fall will ist eine Out of Memmory Exception...

Daher die Frage...

DeddyH 18. Jul 2012 19:56

AW: Freier Speicher in Delphiprogrammen ermitteln?
 
Das ändert aber am Kernproblem nichts: sobald kein zusammenhängender Speicherblock in der benötigten Größe mehr frei ist, ist Schicht im Schacht, obwohl in der Gesamtheit noch genügend Speicher vorhanden wäre. Ein Schritt weg von Arrays hin zu Listen kann das Problem zumindest abmildern.

Mavarik 18. Jul 2012 21:02

AW: Freier Speicher in Delphiprogrammen ermitteln?
 
hmm..

Das würde ein komplett neues Konzept bedeutet...

Kann ich davon ausgehen, dass hintereinander liegende wieder frei gegebene Segmente wieder zu einem großen block zusammen gefasst werden?

Mavarik

tgvoelker 18. Jul 2012 21:35

AW: Freier Speicher in Delphiprogrammen ermitteln?
 
Zitat:

Zitat von Mavarik (Beitrag 1175128)
hmm..

Das würde ein komplett neues Konzept bedeutet...

Kann ich davon ausgehen, dass hintereinander liegende wieder frei gegebene Segmente wieder zu einem großen block zusammen gefasst werden?

Mavarik

Ja. Die Frage ist allerdings, ob die Maßgabe für die Freigabe von Speicher ist, ob die Speicherbereiche beieinander liegen, oder, ob Du die enthaltenen Strukturen noch brauchst.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:05 Uhr.
Seite 3 von 3     123   

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