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

Как реализовать закрытие многопоточного приложения ?   Найти похожие ветки 

← →
juice ©   (2005-05-20 15:52) [0]

Есть главная форма из которой запускается поток, причем его функция состоит из одной строчки:

 IBQuery.Open();

Вешаю на главную форму кнопку "Close", пишу ее обработчик:

if QueryThread = nill then QueryThread.Free();
 Close();

Пробовал вместо QueryThread.Free() подставлять QueryThread.Terminate().
Эффект один - при нажатии на кнопку форма закрывается но приложение висит, это заметно по таскбару например. Почему Terminate не работает это понятно - я в потоковой функции должен сам обрабатывать св-во потока terminated, однако как видите возможности для этого нет никакой. Т.о. окончательный вопрос : как из одного потока грубо убить другой без его согласия ? И почему тут не работает free?


← →
Ega23 ©   (2005-05-20 15:57) [1]

if QueryThread = nill then QueryThread.Free();

Может, всё-таки <> ?   :о)


← →
VMcL ©   (2005-05-20 15:59) [2]

>>juice ©   (20.05.05 15:52)

> Т.о. окончательный вопрос : как из одного потока грубо убить другой без его согласия ?

TerminateThread



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

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



Память: 0.45 MB
Время: 0.027 c
14-1116436236
Yegorchic
2005-05-18 21:10
2005.06.06
Статья про Photoschp CS


1-1115379849
Артур
2005-05-06 15:44
2005.06.06
Цвет линий в таблице!


3-1115107253
salexn
2005-05-03 12:00
2005.06.06
ClientDataSet и проблема фильтрации для WideString полей


6-1111530471
ALex B.
2005-03-23 01:27
2005.06.06
NetUseAdd


14-1116522957
YurikGL
2005-05-19 21:15
2005.06.06
Где убыточность?




   Наверх