| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Сети > Теряются пакеты |
| Автор: Mandor 25.9.2005, 23:18 |
| Есть две программы: клиент и сервер. Обе пишутся с использованием Indy 9, delphi 2005. Сервер многопоточный, для каждого клиента создается парочка потоков. Такая проблема: на локальной машине запускаю сервер, подконнекчиваюсь к нему двумя клиентами (тоже локально) и тут начинает возникать странный эффект - если один клиент отсылает запрос серверу, сервер должен отослать ответ всем клиентам (будем считать что это простой чат), так вот не всегда ответ сервера доходит до всех клиентов. Т.е. обычно все доходит до всех, но иногда ответ сервака получает только один клиент (на большем количестве клиентов не проверял - смысла нету). Все бы ничего, но! Использовал сниффер и смотрел траффик - пакеты исправно отсылаются. Более того, использовал некоторые дебаг-модули, ничего неожиданного они не показали, но с ними клиенты начинали работать как часы, все пакеты приходили и обрабатывались. Делал в самом клиенте вывод траффика - то же, становилось все хорошо, видимо какая-то задержка в обработчике если есть, то все начинает работать как надо. Я уж и не знаю что копать. То ли в Indy нужно соблюсти какие-то дополнительные условия, то ли синхронизация там какая-нибудь... не знаю... Подскажите что копать. |
| Автор: RA 27.9.2005, 09:08 |
| Для начала лутше выяснить закономерность касяка, а потом уже разбираться с причиной. |