Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.30;
Скачать: CL | DM;

Вниз

TIdTCPClient.Connect подвисает   Найти похожие ветки 

 
mRodion ©   (2004-04-15 09:46) [0]

Привет всем!
Использую компоненту Indy TCPClient для связи со специфическим сервером в сети по специфическому протоколу.
Подключение к серверу делается в общем случае так:

TCPSocket.Port:=FPort;
TCPSocket.Host := FHost;
TCPSocket.Connect (FInterval);

В случае когда Finterval задан большим (несколько секунд), а сервер не доступен, компонента, пытаясь подключиться, вешает намертво приложение. То есть пользователь не имеет возможности ни свернуть его, не развернуть, ни нажать какую-нибудь кнопку.
После заданного таймаута компонента возвращает ошибку и программа продолжает нормально работать.

Кто-нибудь знает, как побороть это подвисание? В общем-то Indy довольно распространены... Кстати, подобные проблемы наблюдаются и при использовании метода ReadLn, когда сервер по каким-то причинам задерживает ответ (или ответ идет по очень медленному каналу связи).

Использую Indy 9.0, D5, W2k


 
Digitman ©   (2004-04-15 09:55) [1]

простейшее решение - брось на форму с TIdTCPClient компонент TIdAntifreeze


 
mRodion ©   (2004-04-15 10:18) [2]

Опа!
Спасибо! Не знал.
А что делать, если я компонент TIdTCPClient кидаю не на форму, а создаю динамически в своим компонентах?

Просто создать еще и Антифриз?


 
Digitman ©   (2004-04-15 10:30) [3]

да.
если оба компонента создаются в осн.код.потоке (неважно как - динамически либо будучи "брошенными" на форму), то антифриз поможет в любом случае



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

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

Наверх




Память: 0.47 MB
Время: 0.04 c
14-1084361772
alless
2004-05-12 15:36
2004.05.30
HTML - Microsoft Internet Explorer


6-1081854524
Steelator
2004-04-13 15:08
2004.05.30
Какой лучше использовать Stream для работы с TIdTCPServer/Client


1-1084607897
_Druid_
2004-05-15 11:58
2004.05.30
Вопрос по Hotkey


1-1084584669
Игорь
2004-05-15 05:31
2004.05.30
скажите как сделать так чтобы в форме1 при нажатии на Button


8-1079595546
Ziko
2004-03-18 10:39
2004.05.30
Рисование штриховых и пунктирных линий GDI толщиной > 1