Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#9

AW: Desaströse Performance von TRichedit

  Alt 12. Sep 2024, 13:37
Daten besonders Resourcenhungrig sind.
Bei TStringList.LoadFromFile hat man locker währenddessen über 3 bis 5 Mal so viel im RAM, wie die Datei groß ist. (plus noch 1 Mal, aber das ist nur der FileCache, welcher sich bei Überfüllung selbst entsorgt)
Es wird also normal mit Win32 schon ab durchschnittlich 500-700 MB zu Problemen kommen, da die ersten 1+1 bis 1+2 Mal jeweils als zusammenhängender Block im Speicher Platz finden müssen.

Man könnte theoretisch versuchen TCustomRichEdit.CreateParams zu überschreiben (TWinControl.CreateSubClass ist leider nicht virtuell) und dort auf die Version 2 umstellen (ich weiß aber nicht in wie weit die RichEdit-API nach unten kompatibel sind, aber Delphi hat ja eh nur einen Bruchteil der Möglichkeiten implementiert)

Alternativ eben manuell (NonVCL) via CreateWindow mit RICHEDIT_CLASSW (anstatt MSFTEDIT_CLASS) sich ein RichEdit erstellen.
Winapi.RichEdit.pas

k.A. ob es ein RichEdit von einem Frendanbieter gibt, welches nicht auf dem TRichEdit aufsetzt.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (12. Sep 2024 um 13:51 Uhr)
  Mit Zitat antworten Zitat