Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.02.2010, 10:42   #1
Антон Ю.Б.
Форумчанин
 
Регистрация: 03.01.2009
Сообщений: 116
По умолчанию OverbyteICS. TWSocketServer.ClientCount

Вопрос уважаемым коллегам. Если кто-то работал с данным классом, то не пояснит ли он мне, как разрешить следующую ситуацию. Реально к серверу подключено одновременно не более 60-70 клиентов, WSocketServer.ClientCount дает после 12 часов работы 350 клиентов. По ряду причин храню список структур, содержащих подключенны сокеты и удаляю регулярно из нее каждый сокет с проверкой (с запасом) на (Socket=nil) or (Socket.PeerAddr='') or (Socket.State in [wsInvalidState, wsClosed]). Число оставшихся сокетов в моей структуре совпадает с WSocketServer.ClientCount. а) почему число подключеных соединений так завышено? б) по какому признаку отследить неактивные соединения (если не прибегать к хранению времени последнего обмена и закрытию по собственному таймауту)? в) как без внешних средств инициировать закрытие неактивных соединений?
Антон Ю.Б. вне форума Ответить с цитированием
Старый 19.02.2010, 19:23   #2
Alemas
Пользователь
 
Регистрация: 15.02.2010
Сообщений: 18
По умолчанию

раз уж вы работали с WSocketServer, то пожалуйста помогите с ним. Какой адрес надо в него прописывать? Я вообще практически ничего в нём не понимаю! Если можно отправьте пример работы или кусок кода программы.
Alemas вне форума Ответить с цитированием
Старый 19.02.2010, 21:34   #3
Антон Ю.Б.
Форумчанин
 
Регистрация: 03.01.2009
Сообщений: 116
По умолчанию

Антон Ю.Б., внимательней надо быть, есть такое свойство LingerTimeOut.
Антон Ю.Б. вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц