![]() |
AW: Anwendung beendet sich nicht (seit XE2)
Hallo,
wenn Du keine TThreadList hast, dann wirst Du ja wahrscheinlich im onClose-Ereignis des Hauptfensters Deine Threads (oder die Klasse drüber) freigeben. Und dort wirst Du ja sowas wie:
Code:
aufrufen.
meinThread.free;
--> Und die destroy-Routine wartet so lange, bis der Thread beendet ist. Und im Thread steht ja wahrscheinlich sowas in der Art:
Code:
.Free ruft .destroy auf.
procedure TmeinThread.Execute;
begin inherited; while not Terminated do begin if signal_mach_was then begin // hier wird irgendwas gemacht --> und wenn das zu lange dauert --> dann hängt Deine Anwendung beim Schließen... end; sleep(1); end; end; In der Delphi-Hilfe steht zu .destroy: Zitat:
Viele Grüße, Poolspieler |
AW: Anwendung beendet sich nicht (seit XE2)
Hier mal zum Thema, den Thread nach einer Wartezeit dann mit Gewalt zu beenden falls er es nicht von alleine tut:
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz