Einzelnen Beitrag anzeigen

alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#3

Re: [Thread] Thread im Deadlock abschießen

  Alt 10. Okt 2008, 07:33
Wenn man das Objekt/Handle, auf das der Thread mit 'WaitForXXXObject' wartet, per 'CloseHandle' schließt, dann liefert die 'WaitXX' Routine den Wert 'WAIT_ABANDONED'.

Aber Dezipaitor hat Recht: Wenn Du in so eine Situation kommst, dann i.A. stimmt etwas nicht. Nur wenn Du zum Programmende alle Threads beenden willst, ist das imho legitim.

Du kannst auch den 'Terminated' Flag des Threads setzen und dann am Handle (z.B. der Semaphore) zupfen. Dann kommt das 'Wait' zurück und Du kannst als Erstes das 'Terminated' Flag prüfen.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat