Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.11;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.035 c
15-1147256562
Megabyte
2006-05-10 14:22
2006.06.11
Ну кто так проектирует БД...


15-1147946804
Layner
2006-05-18 14:06
2006.06.11
Именование таблиц в 1С или как такое повторить у себя


2-1148629398
justnick
2006-05-26 11:43
2006.06.11
Расчет максимального значения поля таблицы


11-1127931560
Kozz
2005-09-28 22:19
2006.06.11
Почему Thread1 останавливается ?


15-1148037263
koval.
2006-05-19 15:14
2006.06.11
Помогите выбрать модуль памяти DDR SDRAM