Forum: Object-Pascal / Delphi-Language
by Uwe Raabe,
31. Mai 2013
Das hatte ich ja mit den Ausführungen in dem Abschnitt davor gemeint.
In dem Fall liegt das Problem aber nicht in der Methode selbst oder an der dort erzeugten Klasseninstanz (d.h. jeder Methodenaufruf verwendet seine eigene Klasseninstanz - auch bei Multithreading), sondern an der Implementation der Klasse. Darüber können wir aber allenfalls spekulieren.
Forum: Object-Pascal / Delphi-Language
by Uwe Raabe,
30. Mai 2013
Die lokalen Variablen und die Parameter einer Methode werden auf dem Stack angelegt oder es wird ein Register der CPU benutzt. Das ist in jedem Fall threadsicher. Bei Pointern, dynamischen Arrays und Klasseninstanzen (sind ja auch Pointer) muss man aber wiederum aufpassen. Die Inhalte liegen nämlich nicht auf dem Stack.
In dem konkreten Beispiel wird aber die Klasseninstanz innerhalb der...