Thema: Frage zu DLL

Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

AW: Frage zu DLL

  Alt 1. Dez 2013, 15:28
Seit D2006 (glaub ich) ist im Delphi FastMM und später das FastStrings-Projekt teilweise integriert.

Daher sind auch die Strings nun etwas schneller, da die Kopieroperationen optimiert sind.
So können nun z.B. Speicherblöcke Inplace verkleiner und vergrößert (falls Platz da ist) werden, ohne glich den kompletten Speicherinhalt verschieben zu müssen.
Diebezüglich gibt es in der anderen API keinen guten Realloc-Befehl.

In wie weit aber der anderen Speichermanager auch langsamer ist (man erinnere sich mal an den alten DelphiMM), hab ich noch nie ausprobiert. (GetMem/FreeMem/Realloc)

Aber schon bei WideString als Parameter (ohne Const), wird bei Prozedureintritt der komplette String kopiert, wärend bei delphis LongStrings nur ein Interlocked-Increment auf den Referenzzähler gemacht wird.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat