OnClose()<-->Thread

kerian

Erfahrenes Mitglied
Hallo zusammen,
ich pro. in VC 6.0. Mein Problem ist, wenn ich meine SDI App Beende stürtz die ab.
Habe festestellt, dass meine Thread nicht schnell genug beenden!! Wollte in der OnClose() Methode von MainFrame ein
Code:
while(){}
einbauen. Habe jetz bemerkte, dass die App aber weiter beendet wird ohne auf mein Thread zu warten!
Meine Frage ist jetzt, wo und wie kann ich auf meine Threads warten? Wenn ich mein App beende. :confused:

Ich glaub hab mich unglücklich ausgedrückt! Worum es mir geht ist, wenn ich auf das kreuz in der Titelleiste drücke müssen erst meine Thread's beendet werden. Und das habe ich noch nicht auf die Reihe bekommen! Das runterfahren der Anwendug ist schneller als das beenden meiner Threads! Ich kann in der OnClose() Methode einbauen was ich will Die Anwendung ist schneller! Das kommische ist, ich warte in dieser Methode auf meine Threads trotzdem fährt die Anwendung runter
 
Zuletzt bearbeitet:
Na du wartest einfach auf die Beendung der Threads in deiner OnClose() Routine:

prinzipiell müsste das so gehen:

Code:
CWinThead thread; // ich nehm an das du eine Klasse davon abgeleitet hast
WaitForSingleObject(thread, INFINITE); // INFINITE = unendlich lange warten

allerdings solltest du deinem Thread mitteilen dass du ihn beenden willst.
 
Hallo,
habe getestet. Aber die Destruktoren der anderen Classen laufen weiter!
Eigentlich sollte er da stehen und warten aber irgendwie macht er das nicht!
 
Ich bin's nochmal,
ich habe den Fehler! Mein Handel vom Thread ging verloren warum auch immer. Ich speicher mir den Handel jetzt weg und sehda mit
Code:
WaitForSingleObject(thread, INFINITE);
funktioniert es :) danke
 

Neue Beiträge

Zurück