Gut also ein "Problem" vor dem ich länger stehe ist, dass ich nicht genau weiß wie ich meinen
Thread beenden soll.
Ich erstelle in meiner Anwendung einen
Thread mit der
VCL-Thread-Klasse TThread. Dann werden dem
Thread einige Dinge übergeben und er wird gestartet. Dem benutzer soll nun aber auch die Möglichkeit gegeben werden den
Thread zu beenden. Also dachte ich mir ich setz die Eigenschaft Terminated auf true und beende den
Thread dann.
So jetzt zum eigentlichen Problem. Der
Thread führt viele Sachen nacheinander aus, das heißt es ist keine Schleife. Das bedeutet, das ich nach jedem Größeren Abschnitt und/oder in jeder Schleife (kommen welche in einigen Abschnitten vor) prüfen muss ob der
Thread "beendet" ist. Meiner Meinung nach ist das ein bisschen viel, nur um einen
Thread zu beenden. Aber mir würde spontan nichts anderes einfallen.
Zum anderen soll der
Thread beendet werden, wenn ein Fehler (Warnung) entsteht, dafür müsste ich auch jedes mal Prüfen, ob bereits ein Fehler (Warnung) enstanden ist oder nicht.
Gibt es da noch eine andere Möglichkeit den
Thread zu beenden? Ich finde diese Methode nicht besonders effizient und verursacht einiges an zusätzlichem Code. Wenn das bereits die beste Möglichkeit ist, muss ich sie akzeptieren. Ansonsten such ich nach einer anderen.
TerminateThread würde ich nicht so gern benutzen weil das einfach eine Vergewaltigung für den
Thread ist und wenn ich meine Anwendung beende, bekomm ich meistens AVs und das ist nicht so geschickt.
MfG Brainstalker