Форум: "Сети";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];
ВнизIndy Как избавиться от зависаний при закачке? Найти похожие ветки
← →
Component TIdNNTP (2005-12-02 06:22) [0]Компонент TIdNNTP. ( Хотя наверное в других всё тоже самое. ) Даю команду IdNNTP1.GetBody, и получаю зависон, пока это Бади не скачается.
Как от этого избавиться? Я хочу, чтобы никаких зависаний небыло. Типа я запустил скачку, а когда скачается, чтобы сгенерировалось событие. Так можно сделать?
← →
Digitman © (2005-12-02 08:28) [1]самое простое решение - брось на форму TIdAntifreeze, он для того и предназначен, чтобы у тебя не было "зависонов"
← →
Ботвин Дмитрий (2005-12-02 16:04) [2]А самое правильное выность блокирующие функции в отдельный кодовый поток :-)))
← →
Digitman © (2005-12-02 16:09) [3]
> Ботвин Дмитрий (02.12.05 16:04) [2]
вполне логичное, но вовсе не в каждом случае оправданное решение
← →
Ботвин Дмитрий (2005-12-02 16:21) [4]Digitman © (02.12.05 16:09) [3]
Да я знаю, я этот подход навсякий случай предложил, вдруг ему пригодится когда-нибудь. Это ведь только у инди есть такой хитрый компонент :-)))
← →
Component TIdNNTP (2005-12-03 02:55) [5]
> Ботвин Дмитрий (02.12.05 16:21) [4]
>
> Digitman © (02.12.05 16:09) [3]
>
> Да я знаю, я этот подход навсякий случай предложил, вдруг
> ему пригодится когда-нибудь. Это ведь только у инди есть
> такой хитрый компонент :-)))
А какие можно посоветовать альтернатинвые для Ньюсгрупп?
Кстати скачал новую верси Indy, и не пойму как поставить. Ведь Indy - это часть Delphi 7.
Ещё я читал статью про компонент TNMNNTP, но не нашёл где его скачать. И даже вроде бы он от старых Дельфий каких-то, но это я не уверен.
← →
Component TIdNNTP (2005-12-04 03:06) [6]Короче никто ничего не знает здесь?
И гугль только сюда ссылку выдаёт. Ни примеров по этому компоненту, ничего, блин.
← →
Component TIdNNTP (2006-01-16 06:22) [7]Поможите, а?
← →
Вектор (2006-04-02 06:14) [8]Аналогичный вопрос ...
← →
Eraser © (2006-04-02 22:03) [9]
> Component TIdNNTP (03.12.05 02:55) [5]
> Кстати скачал новую верси Indy, и не пойму как поставить.
> Ведь Indy - это часть Delphi 7.
Когда установлено - да, но никто не мешает полностью удалить старую версию и установить новую.
> Вектор (02.04.06 06:14) [8]
про NM компоненты забудь - они глучные, советую Indy использовать.
> Indy Как избавиться от зависаний при закачке?
выполнять код в доп. потоке.
← →
Вектор (2006-04-07 04:41) [10]> выполнять код в доп. потоке.
Он и так в потоке. Поток не завершается, пока всё не скачает.
← →
Сергей М. © (2006-04-07 09:00) [11]
> Поток не завершается, пока всё не скачает
Из другого потока закрой хэндл гнезда, которое создано компонентом TIdNNTP.
Тогда блокирующий метод GetBody() завершится с исключением, которое можно обработать в try..except-блоке и корректно завершить работу поточной ф-ции.
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.036 c