Thema: Delphi TStrings Speicher

Einzelnen Beitrag anzeigen

Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#16

Re: TStrings Speicher

  Alt 23. Mär 2006, 14:05
Zitat von jbg:
Die Delphi-Strings haben einen Referenzzähler. Und bei "S1 := S2;" wird nichts kopiert, sondern einfach S1 auf Pointer(S2) gesetzt und der Referenzzähler um eins erhöht. Beim kopieren einer Stringliste passiert genau dasselbe. Man braucht also grob Count*SizeOf(TStringItem) = Count*8 Bytes für die Kopie. Und bei 8KB sollten doch wohl noch drinnen sein.
Wirt schon mehr sein da diese Strings auch im Win32-Control vorhanden sind/kopiert wurde und dort der Delphi-Referenzzähler nicht funktionieren kann da die Texte mit PChar-WinAPI-Funktionen kopiert wurden.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat