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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.04.2009, 13:51   #1
Антон Ю.Б.
Форумчанин
 
Регистрация: 03.01.2009
Сообщений: 116
По умолчанию synapse "Connection reset by peer"

Ситуация: Клиент (synapse), сервер(Indy10). В клиенте создается поток, который выполняет соединение с сервером. По приходу данных сокет закрывается и уничтожается, а поток порождает еще один аналогичный поток, в котором происходит то же самое. Итого в цепочке три потока и три соединения (все обрабатывается одним и тем же кодом). Если выполнять это в локальной сети, то проблем нет. Если через интернет, то в третьем потоке создается соединение, запрос передается серверу и он начинает его обрабатывать. В этот момент клиент сообщает "Connection reset by peer", а сервер видит просто, что клиент отключился. Нет ли у кого-либо соображений - с чем это может быть связано?

P.S. В цепочке из двух потоков и соединений такого никогда не происходит.
Антон Ю.Б. вне форума Ответить с цитированием
Старый 01.04.2009, 15:29   #2
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Сокет закрывается и уничтожается на клиенте ?
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 01.04.2009, 15:51   #3
Антон Ю.Б.
Форумчанин
 
Регистрация: 03.01.2009
Сообщений: 116
По умолчанию

Цитата:
Сокет закрывается и уничтожается на клиенте ?
Да, на клиенте.
Антон Ю.Б. вне форума Ответить с цитированием
Старый 01.04.2009, 16:03   #4
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

В Indy бывает такая проблема. Попробуйте на стороне Сервера также делать disconnect и на сервере тоже (звучит тофтологией, но это не так: проверяйте на сервере не закрыл ли соединение клиент, и если закрыл, то отдайте сокету disconnect). Но большинство этих ошибок в последних ревизиях 10.5.5 исправлено.
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Старый 01.04.2009, 17:26   #5
Антон Ю.Б.
Форумчанин
 
Регистрация: 03.01.2009
Сообщений: 116
По умолчанию

Спасибо, Квэнди, натолкнули на мысль. Поскольку все соединения однозапросные у меня, то после отдачи данных на сервере стал без всяких проверок принудительно закрывать сокет. Просто все равно не очень ясно с самим вопросом, возникло ощущение, что у Indy лимит на подключения с одного IP или что-то в этом роде.
Антон Ю.Б. вне форума Ответить с цитированием
Старый 01.04.2009, 18:50   #6
Квэнди
Старожил
 
Аватар для Квэнди
 
Регистрация: 13.12.2006
Сообщений: 3,859
По умолчанию

Не, лимита нет, просто подвисают соединения и,видимо, в какой- то момент пересекаются ID потоков или сессий
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи
Квэнди вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
"Connection Closed Gracefully." Что это значит? dimon000 Работа с сетью в Delphi 15 06.05.2014 14:31
idHTTP и ошибка Connection reset by peer. tebeen Работа с сетью в Delphi 11 23.01.2012 17:43
Ошибка Ftp connection reset by pear NetworM Работа с сетью в Delphi 6 27.03.2009 11:09
блок "cont" с права не принимает значение "margin: 10px;" которое описано в body tabikA HTML и CSS 5 24.02.2009 21:50
если пользователь наберет какой-то другой символ не "y" или "n" и нажмет enter, программа проигнорирует skobets Общие вопросы C/C++ 2 03.06.2008 06:51