Einzelnen Beitrag anzeigen

Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.027 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#14

AW: Überschreiben von TThread.Terminate

  Alt 7. Jul 2010, 10:38
Die Prozedur Terminate setzt nur .Terminated auf true.
Ob und wie der Thread das nun intern beachtet ist egal.

Terminate/Terminated beendet die Threadverarbeitung nicht.
Terminated sagt nur "Hallo lieber Thread, würdest du dich bitte mal beenden?"

Also eigentlich sehe ich demnach auch keinen Grund, warum dieses überschreibar sein soll, da man es ja Threadintern dennoch anders behandeln kann (z.B. einfach ignorieren oder mit was Anderem verknüpfen).
Wie "gut", dass FTerminated private und die property Terminated, die gottseidank protected ist nur read only ist. /irony=off

Zum Glück hat ein Thread ein OnTerminate Event, wie schade nur, dass das erst aufgerufen wird, nachdem der Thread terminated wurde, und nicht zu dem Zeitpunkt, wo Terminate aufgerufen wurde.

Wie man es auch dreht und wendet, es ist schlecht, dass Terminate nicht virtual ist.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat