Zitat von
sirius:
Edit: As TObject ist natürlich quatsch, sorry.
Warum sollte? Begründung bitte?
Das einzige was an deinem Code nicht so 1:1 klappt ist, dass der Threadersteller geschrieben hatte, TList zu verwenden. Somit gibt die Liste Pointer zurück und da verweigert der Compiler die Anwendung von IS und AS, aber ansonsten ist der Code in Ordnung (auch mit TObject, von daher die Frage).
Und statt TList ist vllt. eher zu überlegen TObjectList zu benutzen. Diese gibt die Objekte gleich frei beim entfernen und genauso beim Überschreiben. Also wenn ein Eintrag X mit einer anderen Instanz zugewiesen wird, dann wird die originale Instanz freigegeben und die neue and der Position gesetzt.