Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   SHFileoperatio-Ärger (https://www.delphipraxis.net/175843-shfileoperatio-aerger.html)

Mattze 1. Aug 2013 09:50

AW: SHFileoperatio-Ärger
 
Hallo CCRDude,

FreeOnTerminate ist schon klar, aber die Frage war etwas anders.
Funktioniert das evtl. nur, wenn der Thread mit einer Variable im Hauptprogramm "angemeldet" ist?
Es kann - und wird bestimmt auch - prinzipiell funktionieren. Aber denkbar wäre auch so eine (falsche) Einschränkung.

Mit der automatischen Freigabe der Threads ist das so eine Sache. Manchmal führt das tatsächlich zu einem Speicherleck. (Ich nehme an, immer dann, wenn man im Thread etwas createt hat und es im Thread.destroy nicht frei gibt - oder geben kann. Z. Bsp. bei SHFileOperation. Da scheint einiges angelegt zu werden und erst bei Beendigung oder Cancel wieder frei gegeben zu werden. Im Thread.destroy kommt man da nicht ran. Machst Du das im Thread - wie oben - wird zwar der Thread von Delphi freigegeben, nicht aber die von SHFileOperation angelegten Objecte - nehme ich an. FastMM4! Aber auch das scheint nicht ganz so einfach.)

Warum soll ich immer das ganze Threadobject mitschleppen, wenn ich doch eigentlich nur das Handle brauche?
Allerdings bin ich momentan am Überlegen, ob eine TObjectList der Threads nicht vielleicht doch die bessere Lösung wäre.

Gruß
Mattze


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:12 Uhr.
Seite 3 von 3     123   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz