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

Прервать соединение   Найти похожие ветки 

 
v eb   (2006-05-25 15:45) [0]

Здравствуйте.
Подскажите, что сделать чтоб по нажатию кнопки прервалась работы функции IdHTTP.Get. Т.е. если медленное соединение, а страница большая, то надо предоставить пользователю возможность прервать загрузку. Как это сделать?


 
Сергей М. ©   (2006-05-25 15:46) [1]

Закрыть гнездо из другого треда


 
veb   (2006-05-25 15:57) [2]

Сергей, не понял сленг? имется виду разбиение на потоки?
Пожалуйста, можно пример кода.
у меня сделано так
 Memo1.Text := IdHTTP.Get("http://...");
и все было бы хорошо если б я мог прервать загрузку.


 
Kolan ©   (2006-05-25 16:05) [3]

Я ни разу не работал с интернетом итд. Но видимо смысл такой.
Как всегда тяжёлые вычисления, копирование, а в вашем случае загрузка выносятся в отдельный поток(TThread). А прерывается все это дело из главного по команде пользователя.

PS
 Попытался интерпритировать [1]. Могу ошибаться :)


 
Сергей М. ©   (2006-05-25 16:47) [4]


> veb   (25.05.06 15:57) [2]


в Indy9:

CloseSocket(IdHTTP.Socket.Binding.Handle)

Эта строка, вызванная в доп.потоке, приведет к прерыванию выполнения метода Get() в потоке, вызвавшем это самый IdHTTP.Get().. При этом будет возбуждено исключение, перехватываемое и обрабатываемое в блоке try..except


 
veb   (2006-05-25 16:59) [5]

Сергей, спасибо!
Еще не попрбовал, но в целом понятно.



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

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



Память: 0.46 MB
Время: 0.026 c
2-1148359258
leonidus
2006-05-23 08:40
2006.06.11
Передача массива в процедуру


2-1148501573
Юнкер
2006-05-25 00:12
2006.06.11
Как получить ответ от IdUDPServer ввиде структуры?


2-1148380907
Ironman83
2006-05-23 14:41
2006.06.11
Литература


1-1146653836
MetalFan
2006-05-03 14:57
2006.06.11
торможу с RichEdit %)


15-1147166720
Der Nechk@ssoff
2006-05-09 13:25
2006.06.11
Засиделся...




   Наверх