Es wird im Übrigen nicht auf eine Variable des Hauptthreads zugegriffen, sondern beide Variablen FImages (Form, ImageDatasource) verweisen auf eine Instanz. Die Variablen sind aber unabhängig voneinander.
Ja, hätte ich natürlich etwas genauer beschreiben müssen.
ABER Deine Aussage "Die Variablen sind aber unabhängig" stimmt das wirklich?
Im Oncreate der Form findet ja folgendes statt:
Delphi-Quellcode:
FImages := TImageDataSource.Create;
// Create thread with image loader
FSplashImageLoader := TSplashImagesLoader.Create;
FSplashImageLoader.Form := Self;
FSplashImageLoader.DataSource := FImages;
Nach meinem Verständnis verweist dann sowohl Form.FImages und FSplashImageLoader.FImages auf ein und dieselbe Instanz. Oder?