Forum: Programmieren allgemein
by Sir Rufo,
14. Apr 2014
Gerade entdeckt
TThread.Synchronize() and TThread.Queue() do not work correctly in FireMonkey
Ob das hier mit reinspielt glaube ich nicht, ist aber schon peinlich ... :roll:
Forum: Programmieren allgemein
by Sir Rufo,
14. Apr 2014
Ja, hab es schon im Beitrag geändert ;)
Forum: Programmieren allgemein
by Sir Rufo,
14. Apr 2014
Genau die verweisen beide auf die gleiche Instanz. Die Variablen sind aber unabhängig!
Jeder dieser Variablen kann ich beliebige Werte zuweisen ohne die andere Variable zu beeinflussen.
Forum: Programmieren allgemein
by Sir Rufo,
14. Apr 2014
Um zu erkennen, warum die Bilder nicht geladen werden (bei mir werden alle 10 Bilder angezeigt), ersetz doch mal die Execute-Methode hiermit (damit werden die Exceptions aus dem Thread angezeigt):
procedure TSplashImagesLoader.Execute;
begin
if not Assigned( Form ) or not Assigned( FImages )
then
Exit;
try
Synchronize( FForm.ShowSplashLoading );
Forum: Programmieren allgemein
by Sir Rufo,
14. Apr 2014
Wenn du alles was im Thread läuft synchronisiert ausführst, dann entzieht man dem Thread seine Daseinsberechtigung.
Ich werde mir das beizeiten nochmal ansehen, da ist auf jeden Fall noch was mit dem Thread los.
Diese Umsetzung des Threads finde ich auch sehr gewagt und nicht wirklich stabil.
BTW: schau mal hier http://www.delphipraxis.net/1255500-post17.html ;)
Es wird im Übrigen nicht...
Forum: Programmieren allgemein
by Sir Rufo,
13. Apr 2014
Ja, das OleInitialize hat nur zufälligerweise so lange gebremst, dass das Framework sich initialisieren konnte. Ist aber wohl eher ein lucky shot als ein wirklicher Fix ;)
Forum: Programmieren allgemein
by Sir Rufo,
13. Apr 2014
Generell liegt es wohl daran, dass FMX-Framework erst komplett initialisiert sein muss, damit der Code funktioniert.
Mit einem Thread kommt es bei diesem Verhalten auf das Timing an. Ist die Framework-Initialisierung abgeschlossen bevor der Thread startet, dann ist alles gut, ansonsten kommt ein Fehler im ImageDataSoure bei TBitmap.CreateFromFile bzw. (mit Debug-DCUs)
function...
Forum: Programmieren allgemein
by Sir Rufo,
13. Apr 2014
@Harry Stahl
Die Variable gehört durchaus dem Thread, da es sich bei dem Inhalt aber hier um eine Referenz zu einer Instanz handelt muss man auch die Instanz im Blick haben. Denn auf diese Instanz greift auch die Form zu.