Einzelnen Beitrag anzeigen

iphi

Registriert seit: 13. Feb 2009
262 Beiträge
 
Delphi 7 Personal
 
#13

Re: Ist SetLength Thread-safe?

  Alt 25. Okt 2009, 15:27
Ok, so langsam kapiere ich wie das Memorymanagement funktioniert. Ich habe mich schon immer gefragt, wie es funktioniert, ein array dynamisch zu vergrößern, wenn am Ende des arrays kein Platz mehr ist...

Diese Umkopiererei will ich eigentlich vermeiden.

Wenn mein Pointerarray statisch ist (=vordefinierte Länge), dann müsste es doch fix im Speicher liegen, oder? Die Pointer(=dynamische Arrays) zeigen dann auf nil oder auf dynamische Arrays fixer Länge.
Bsp:
Delphi-Quellcode:
type
  Tx: array of char;
x: array[0..100] of Tx;
Wenn ich z.B. setlength(x[50],100) mache, würde das die restlichen Arrays x[i] (sofern allokiert) im Speicher fix lassen oder würden die ggf. auch umkopiert werden?

P.S. Hab in Delphi6 TMultiReadExclusiveWriteSynchronizer gefunden. Der scheint ein geeignetes Werkzeug für meine Anwendung, oder?

Gruß Thomas
  Mit Zitat antworten Zitat