Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
Delphi 2007 Professional
|
Re: Threadstatus abfragen
13. Aug 2008, 12:14
Hi Viktorii,
ich denke die Lösung mit dem Ereignis OnTerminate ist vollkommen ausreichend. Das mit dem Callback ist eine Möglichkeit dem Thread einen Methodenzeiger einer anderen Instanz mitzugeben, die dieser dann aufruft. Ob das aber dann nicht wieder Konflikte bezüglich der Asynchronität verursacht weis ich nicht.
Eine weitere Möglichkeit ergibt sich noch, in dem man eine eigene UserMessage definiert. Über SendMessage oder PostMessage kann dann eine Botschaft an das creierende Fenster gesendet werden um die Nachricht des Terminierens los zu werden. Damit ergibt sich dann natürlich auch die Möglichkeit eine Liste von Empfängern für diese Nachricht zu erstellen. so lange der Thread existiert könnten dort dann sämtliche Instanzen (die über die Botschaftswarteschlange erreicht werden können) registriert werden und der Thread benachrichtigt dann alle eingetragenen.
Ich persönlich bevorzuge aber das Ereignis.
Gruß oki
42
|