Форум: "Начинающим";
Текущий архив: 2006.06.11;
Скачать: [xml.tar.bz2];
ВнизПрервать соединение Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.013 c