Danke für dein Beispiel .. Werde mir das mal anschauen in Ruhe.
Mein Problem ist folgendes
Delphi-Quellcode:
procedure TMyThread.Execute;
begin
repeat
EntercriticalSection;
..
LeaveCriticalSection;
..
//sichere Warteposition ausserhalb Lock
SuspendIfHalted;
until Terminated;
end;
So wie hier wartest du auch auf Terminate..
Der Thread läuft also so lange bis der Zustand Terminate eintritt.
Wenn ich nun anstelle von Suspend.. Terminate verwende so wie vorgeschlagen
dann beendet sich logischerweise der Thread das hat zur folge das ich anschließend kein Plugin mehr starten kann.
MeinThread.Suspend hält den Thread ja nur an und beendet ihn nicht so wie Terminate das tut.
Damit stehe ich im Konflikt zu der Aussage anstelle von Suspend! Terminate zu verwenden.
Na ja und wie MeinThread.Start im vergleich zu MeinThread.Resume steht das ist auch noch fraglisch.
gruss