Вниз
Скачать: CL | DM;

Как прибить поток и им же порожденные?   Найти похожие ветки 

 
Dinara ©   (2002-05-19 21:07) [0]

Нужно мгновенно. Простая посылка Terminate не подходит.


 
Digitman ©   (2002-05-20 08:30) [1]

простейшее решение - в методе потока Execute циклически проверяй состояние флаг Terminated, и в случае True прерывай цикл с последующим выходом из процедуры Execute.

более сложные (но более эффективные во многих случаях) решения могут использовать системные объекты синхронизации (mutex, semaphore и т.п.), а также станд.ф-ции посылки/приема сообщений (PostThreadmessage, PeekMessage, MsgWaitForMultipleObjects и т.д.)


 
Александр Спелицин   (2002-05-20 11:24) [2]

Поток должен сам себя завершить. И лишь в крайнем случае, когда все способы перепробованы, его можно уничтожить вызвав TerminateThread.
Обо всех подводных камнях TerminateThread - в MSDN.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.008 c
6-97378
legioner
2002-03-19 13:14
2002.05.30
Firewall


3-97120
Great DAN
2002-05-04 11:11
2002.05.30
Печать базы


1-97295
Rooman
2002-05-16 09:18
2002.05.30
Поменять шрифт у всех компонентов на форме на Tahoma


6-97371
Antoshka
2002-03-21 09:36
2002.05.30
Загрузить файл с Интернета


7-97445
sj
2002-03-01 18:22
2002.05.30
Формирование ресурсов сообщений




   Наверх