![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#1 |
Форумчанин
Регистрация: 03.01.2009
Сообщений: 116
|
![]()
Ситуация: Клиент (synapse), сервер(Indy10). В клиенте создается поток, который выполняет соединение с сервером. По приходу данных сокет закрывается и уничтожается, а поток порождает еще один аналогичный поток, в котором происходит то же самое. Итого в цепочке три потока и три соединения (все обрабатывается одним и тем же кодом). Если выполнять это в локальной сети, то проблем нет. Если через интернет, то в третьем потоке создается соединение, запрос передается серверу и он начинает его обрабатывать. В этот момент клиент сообщает "Connection reset by peer", а сервер видит просто, что клиент отключился. Нет ли у кого-либо соображений - с чем это может быть связано?
P.S. В цепочке из двух потоков и соединений такого никогда не происходит. |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 13.12.2006
Сообщений: 3,859
|
![]()
Сокет закрывается и уничтожается на клиенте ?
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи |
![]() |
![]() |
![]() |
#3 | |
Форумчанин
Регистрация: 03.01.2009
Сообщений: 116
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 13.12.2006
Сообщений: 3,859
|
![]()
В Indy бывает такая проблема. Попробуйте на стороне Сервера также делать disconnect и на сервере тоже (звучит тофтологией, но это не так: проверяйте на сервере не закрыл ли соединение клиент, и если закрыл, то отдайте сокету disconnect). Но большинство этих ошибок в последних ревизиях 10.5.5 исправлено.
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи |
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 03.01.2009
Сообщений: 116
|
![]()
Спасибо, Квэнди, натолкнули на мысль. Поскольку все соединения однозапросные у меня, то после отдачи данных на сервере стал без всяких проверок принудительно закрывать сокет. Просто все равно не очень ясно с самим вопросом, возникло ощущение, что у Indy лимит на подключения с одного IP или что-то в этом роде.
|
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 13.12.2006
Сообщений: 3,859
|
![]()
Не, лимита нет, просто подвисают соединения и,видимо, в какой- то момент пересекаются ID потоков или сессий
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
"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 |