|
13 / 13 / 1
Регистрация: 24.11.2014
Сообщений: 94
|
||||||
TCP-клиент зависает, стоит серверу отключиться23.06.2015, 13:13. Показов 1846. Ответов 9
Метки нет (Все метки)
Написал простейший TCP-клиент для приема / отправки сообщений. В общем практически все настроил как надо. Пока не разобрался со следующей бякой. Если рвется соединение с сервером (банально, упал или пропал интернет-коннект), то клиент зависает (картинка ниже)
Проблема подозреваю в коде, слушающем Socket.
0
|
||||||
| 23.06.2015, 13:13 | |
|
Ответы с готовыми решениями:
9
Сцена зависает при запуске TCP-клиента, когда он подключен к TCP - серверу, при этом TCP-клиент полностью функционирует
Передача больших файлов tcp. Клиент зависает |
|
484 / 397 / 68
Регистрация: 14.02.2014
Сообщений: 1,930
|
||
| 23.06.2015, 13:32 | ||
|
Жесть. Насилие над сокетом в особо изощрённой форме. Читай MSDN внимательно:
0
|
||
|
13 / 13 / 1
Регистрация: 24.11.2014
Сообщений: 94
|
|
| 23.06.2015, 13:39 [ТС] | |
|
aquaMakc, мы только учимся, так что пока такие извращения
0
|
|
|
484 / 397 / 68
Регистрация: 14.02.2014
Сообщений: 1,930
|
|
| 23.06.2015, 13:44 | |
|
D-Tritus, Синхронные методы вообще я бы не рекомендовал использовать, по крайней мере в однопоточных приложениях. Лично я всего пару раз встречал ситуации, когда блокировка потока до выполнения операции чтения/записи была обоснована.
В качестве учебных целей можно и синхронные методы применить, конечно, но RTFM никто не отменял. И надо отдавать себе отчёт, что во "взрослом" приложении надо будет делать всё по другому.
0
|
|
|
13 / 13 / 1
Регистрация: 24.11.2014
Сообщений: 94
|
|
| 23.06.2015, 13:49 [ТС] | |
|
aquaMakc, да я все прекрасно все понимаю, просто когда начал с ними знакомиться честно говоря ощутимо поплыл, поэтому и остановился на более понятных и привычных синхронных. Видать надо просто больше времени для переварки материала - программку я позднее перепишу. А пока придумал один небольшой костыль...
0
|
|
|
484 / 397 / 68
Регистрация: 14.02.2014
Сообщений: 1,930
|
|
| 23.06.2015, 13:54 | |
|
D-Tritus, да какой костыль? в цитате с MSDN всё уже написано, как надо делать.
0
|
|
|
13 / 13 / 1
Регистрация: 24.11.2014
Сообщений: 94
|
|
| 23.06.2015, 13:58 [ТС] | |
|
aquaMakc, надо позже похоже вставать - совсем сплю
А какое значение таймаута будет оптимальным?
0
|
|
|
484 / 397 / 68
Регистрация: 14.02.2014
Сообщений: 1,930
|
|
| 23.06.2015, 14:05 | |
|
Смотря какой транспорт. Например, если GPRS, там ждать пакет до 5 минут можно. Если Ethernet я бы больше секунды не ставил.
0
|
|
|
13 / 13 / 1
Регистрация: 24.11.2014
Сообщений: 94
|
|
| 23.06.2015, 14:08 [ТС] | |
|
aquaMakc, понятно, спасибо - сейчас внесем "поправки"
0
|
|
|
484 / 397 / 68
Регистрация: 14.02.2014
Сообщений: 1,930
|
|
| 23.06.2015, 14:09 | |
|
Соответственно надо отлавливать исключение.
Особенность исключения сокета, что у него несколько десятков причин. Их нужно смотреть в свойстве исключения SocketException.SocketErrorCode. Так-что оборачивай код в try-catch. Лови исключение SocketException, проверяй SocketErrorCode и обрабатывай как тебе будет нужно.
0
|
|
| 23.06.2015, 14:09 | |
|
Помогаю со студенческими работами здесь
10
TCP-сервер и TCP-клиент. Клиент не находит файл. Реализовать на tcp сокетах переподключение к tcp серверу в случае потери соединения Если сервер TCP то и клиент тоже должен быть TCP? Не приходит ответ на TCP клиент андроид с TCP сервера Qt как создать TCP клиент, TCP сервер ? На С++ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам
Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
|