AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Speicherverbrauch eines Objektes

Ein Thema von trifid · begonnen am 4. Nov 2004 · letzter Beitrag vom 5. Nov 2004
Antwort Antwort
Muetze1
(Gast)

n/a Beiträge
 
#1

Re: Speicherverbrauch eines Objektes

  Alt 4. Nov 2004, 16:52
Moin!

Zitat von trifid:
@Dax
nach Deiner Aussage
Delphi-Quellcode:
n1 := strListe.InstanceSize;
strListe.Add('Heute');
strListe.Add('ist');
strListe.Add('ein');
strListe.Add('schöner');
strListe.Add('Tag');
n2 := strListe.InstanceSize;
müsste n1 <> n2 sein, n1 = n2 = 48
[/quote]

Er gibt auch nur den Platz zurück, den die Instanz braucht für ihre Membervariablen und nix weiter. Selbst die Strings bei dem Beispiel TStringList wird intern in der Klasse nur mit 4 Byte angerechnet, da es ein Pointer ist. Und somit müsstest du theoretisch die Vererbungskette von dem Objekt rückwärts durchlaufen und bei jeder Klasse das InstanceSize aufsummieren - was dann immernoch nicht Daten wie z.B. Strings mit beinhaltet.

Zitat von trifid:
@jbg
Zitat:
Für was brauchst du denn diese Information?
ich habe das Problem in einer selbstgeschriebenen Klasse, dass diese Speicher alloziert und nicht mehr freigeben kann
Ich glaube dieser Ansatz hier hilft dir nicht bei der Lösung des Problems. In wie fern äussert sich denn der Fehler, das du kein Speicher mehr freigeben kannst? Wie kommst du darauf? Nur weil der Taskmanager nicht wieder einen kleineren Wert anzeigt nach einem .Free? Wenn es das letztere ist: sei unbesorgt: Der Delphi Heap Manager verkleinert nicht freiwillig seinen Bereich - wenn der einmal so gross ist, dann bleibt er es bis zum Ende ...

MfG
Muetze1
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:59 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