Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

ClientSocket ;connect... Утечка ресурсов [D5, D6, Win95/98, WinME, NT4, Win2k, WinXP]


Dr.Lo ©   (2002-11-16 19:24:00) 

Клиентский сокет конектится к серверному в асинхронном режиме. Серверное приложение не загружено. По таймеру клиентский сокет повторяет попытки коннекта к серверу, но безуспешно...
Происходит утечка ресурсов (достаточно открыть диспетчер задач Windows и взглянуть на количество открытых дескрипторов и используемой памяти). Если в таком режиме клиентское приложение оставить побарахтаться на десяток часов (на некоторых дохлых компах хватает и трёх часов) то возникает Except о нехватке ресурсов иль ещё бог знает чего. Не спасает даже загрузка серверного и перезагрузка клиентского приложения. Полный алис. Винду на перезагрузку...
Может кто сталкивался с данной проблемой. Подскажите решение.
Если взглянуть на исходники компонента ClientSocket, то вызывает некоторое недоумение тот факт, что ресурсы освобождаются только после успешного коннекта с серверным сокетом.


Dr.Lo   (2002-11-22 16:07:00) [1]

Спасибо, bak, за дельный совет!
Всё нормализовалось.


bak   (2002-11-16 20:16:00) [2]

может быть стОит на онклиентеррор у клиентского сокета обработать
ClientSocket1.Socket.Disconnect(ClientSocket1.Socket.SocketHandle);

????? у меня тоже такое было - добры люди подсказали и все наладилось :)


Наверх

Титульная страница Поиск, карта сайта Написать письмо