Вниз
Скачать: 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.007 c
3-97193
Great DAN
2002-05-05 15:56
2002.05.30
Как упорядочить QRep?


3-97113
AndyM
2002-05-10 15:23
2002.05.30
Переменные в имени таблице (... FROM @myvar)


14-97402
XEL
2002-04-21 22:39
2002.05.30
HELP


3-97163
roman_tutov@mail.ru
2002-05-07 12:34
2002.05.30
Interbase


14-97386
Dzmitry
2002-04-19 11:06
2002.05.30
while<->repeat




   Наверх