Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.01;
Скачать: CL | DM;

Вниз

threads   Найти похожие ветки 

 
oleggar ©   (2005-12-15 21:39) [0]

мое приложение на Делфи состоит из 4 потоков ,один из которых-главный ,никак не может зависнуть ,а остальные могут.Как сделать ,чтоб при зависании одного из неглавных потоков приложение автоматически завершалось по таймеру?


 
Юрий Зотов ©   (2005-12-15 21:55) [1]

Каждый поток периодически сообщает главному о том, что он нормально работает. Если в течение какого-то времени таких сообщений от потока не поступает - значит, этот поток завис. Тогда убиваем его принудительно и завершаем приложение.


 
Германн ©   (2005-12-16 01:54) [2]


>  Тогда убиваем его принудительно и завершаем приложение.
>

Или убиваем его и снова стартуем его.
Но, при этом всём, ну очень желательно вести некий лог, чтобы потом "не было мучительно больно" за безценно потраченные время, усилия и т.п.


 
Leonid Troyanovsky ©   (2005-12-16 08:43) [3]


> Германн ©   (16.12.05 01:54) [2]

> >  Тогда убиваем его принудительно и завершаем приложение.

> Или убиваем его и снова стартуем его.


Снова стартовать - лишнее.
Т.е., после TerminateThread и перед завершением приложения,
попытаться выяснить причины "зависания", или, на худой конец,
занести в лог относящиеся к проблеме данные для
последующего анализа.

Ну, а чтобы не было мучительно больно, лучше искать причины
нехорошего поведения в самом начале пути.

--
Regards, LVT.


 
oleggar ©   (2005-12-16 10:28) [4]

это я все понимаю .вопрос один - terminate thread убьет поток В ЛЮБОМ СЛУЧАЕ? даже если в нем открыт и занят файл или тяжелое зависание?



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

Текущий архив: 2006.01.01;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.024 c
2-1134428569
Змей
2005-12-13 02:02
2006.01.01
Отследить сворачивание и восстановление формы


4-1130585063
AllDontFire
2005-10-29 15:24
2006.01.01
Как получить адрес процедур собственной программы (по названию п)


2-1134421311
Змей
2005-12-13 00:01
2006.01.01
edit.text


2-1134467181
mrGrey2
2005-12-13 12:46
2006.01.01
Преобразование KOI8-R в ANSI


4-1130686963
AllDontFire
2005-10-30 18:42
2006.01.01
есть SHBrowseForFolder с созданием папки?