Einzelnen Beitrag anzeigen

Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.352 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Thread 100% beendet?

  Alt 6. Aug 2011, 10:31
Es soll ja Leute geben die einfach mal schnell durch die Liste Klicken das kann zur folge haben das die Anwendung hängt.
Ich glaube dein Problem liegt woanders...
Ich vermute, dass der Aufruf von FreeLibrary schlicht hängt und der Quelltext danach gar nicht mehr ausgeführt wird.
Ih muss also sicher sein das dass Libray Handle 0 ist.
Das Handle hat nichts mit dem tatsächlichen Zustand zu tun. Das Handle ist wie der Name schon sagt nur ein "Henkel", also ein Anfasser, mit dem du auf die DLL zugreifst. Nicht mehr.

Das Problem kann z.B. sein, dass du Threadsynchronisierung im Zusammenspiel mit WaitFor benutzt. Dann kann ein Deadlock entstehen. Diesen Fall könntest du mit Messages statt Synchronisierung lösen.

Du musst jedenfalls denke ich nicht sicherstellen, dass FreeLibrary fertig durchgeführt wurde, sondern das vor dessen Aufruf alle Threads in der DLL beendet sind...
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat