Thread beenden im Produktionsablauf
-
Hallo,
in einer MFc-Dialog-Applikation soll ein Produktionsablauf, welcher diverse Motorsteuerungen ect. beinhaltet, realisiert werden.
Dazu soll es im Dialogfenster einen Button "Abbruch" geben, der den Ablauf abbrechen soll.
Damit die Info schnell verarbeitet wird, muß der Produktionsablauf mit einem Thread realisiert werden.
Nun ist ja bekannt, daß ein Thread nicht gewaltsam von außen beendet werden kann/darf/soll, sonst könnte man ja in der Abbruch Routine einfach den Thread per Befehl killen.
Also bleibt nur daß man vor jedem neuen Prozeßschritt prüft ob die Stopgedrückt-Variable auf "true" steht und im Ja-Fall den Thread intern beendet.
Dies ist aber recht aufwendig.
Gibts da eine sinnvolle Alternative? Ich denke daß dieses Problem nicht neu ist.
-
Setz ein Flag oder ein Event, dass regeölmässig in dem Thread geprüft wirdund gut ists...
Warum den Holzhammer benutzen, wenn es ganz einfach mit einer Abfrage geht...void MyThreadFunc() { while (NotAborted()) DoWhatEverWeNeedToDo(); }