Einzelnen Beitrag anzeigen

Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#1

XE4 Probleme mit Thread.Start (anstatt Resume)

  Alt 25. Jun 2013, 20:27
Hallo zusammen,
ich habe seit heute XE4 Pro und habe meine Anwendung von Delphi 2009 übernommen. Ein paar Anpassungen musste ich machen aber es lässt sich alles compilieren und ich habe auch keine Warnungen oder Fehler.

Leider bin ich darauf gestoßen, dass ich .Resume von einem Thread nicht mehr verwenden soll, da es veraltet ist.
Jetzt nehme ich eben das besagte .Start und siehe da, ich bekomme AV. Exception EThread, ein bereits laufender Thread kann nicht gestartet werden (oder so ähnlich, habe den genauen Text jetzt nicht vor Augen).
Das komische ist aber, dass ich ein paar Zeilen oben drüber den Thread mit .Create(True) erzeuge und dann setze ich paar Variablen vom Thread und ich frage sogar ab "if MyThread.Suspended then MyThread.Start".
Suspended liefert mir True und nach dem Aufruf von Start bekomme ich eine Exception.

Hat jemand eine Idee was das sein könnte (auch wenn ich grad kein Source zur Hand habe)?

PS: Wenn ich das .Start wieder auf .Resume ändere, geht es ohne Probleme.
Ich habe auch festgestellt, wenn ich alle meine .Resume Aufrufe in .Start ändere und den besagten Exception Typ ignoriere, dann startet meine Anwendung gar nicht und ich sehe sie nur im TaskManager mit 0% CPU Auslastung und 21MB Speicher Verbrauch.

Nutze Win8, 64bit -> Anwendung als 32bit compiliert.

Gruß
Alex
Let's fetz sprach der Frosch und sprang in den Mixer

Geändert von Alex_ITA01 (25. Jun 2013 um 20:32 Uhr)
  Mit Zitat antworten Zitat