![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
зависание программы [WinXP]
anton773 © (2006-06-24 19:41:00)Приветствую всех! Такая проблема:Выполняю закачку файла при помощи wininet в отдельном потоке а главная форма все равно зависает.В чем могут быть грабли? Ведь отдельный поток для того и использут для того,чтобы не было зависаний.
Пусик (2006-06-25 03:25:00) [1]> anton773 © (24.06.06 22:03) [5]
> Разобрался! А как остановить поток?
Для того, чтобы ответить, надо знать, как ц тебя организована логика в поточной функции. В данном случае - метод Execute.
Zeqfreed (2006-06-25 02:49:00) [2]Я предпочитаю не останавливать и удалять потоки вручную, в просто в методе Execute потомка прописываю
FreeOnTarminate := true, что обеспечивает освобождение объекта потока после выполнения метода.
Германн (2006-06-25 02:37:00) [3]
> Разобрался! А как остановить поток?
Не помню откуда, но помню строку:
"Течёт вода из крана забытая заткнуть". OffTop.
anton773 (2006-06-24 22:03:00) [4]Разобрался! А как остановить поток?
anton773 (2006-06-24 20:33:00) [5]
> Кажется WaitFor это ожидание завершения потока
А как правильно запустить поток? А то я уже замучился действовать методом "научного тыка"
anton773 (2006-06-24 20:33:00) [6]
> Кажется WaitFor это ожидание завершения потока
А как правильно запустить поток? А то я уже замучился действовать методом "научного тыка"
Dmitrij_K (2006-06-24 20:11:00) [7]Кажется WaitForэто ожидание завершения потока. Вот тут и весит
anton773 (2006-06-24 19:56:00) [8]PS вот код создания потока (скорее всего сдесь непорядок):
procedure TForm2.N5Click(Sender: TObject);
begin
dm:= loader.Create(false);
dm.WaitFor;
dm.Free;
end;