Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Не срабатывает код после цикла - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Не получается добавить сторонний класс в проект Android Studio http://www.cyberforum.ru/android-dev/thread1715531.html
Нашел класс для работы с лед подсветкой для sony xperia но не могу его добавить , делаю все по инструкции : http://developer.sonymobile.com/knowledge-base/experimental-apis/illumination-bar-api/...
Программирование Android Как правильно добавить рекламу в свое приложение? Объясните пожалуйста как правильно добавить рекламу в свое приложение. Если можно пошагово http://www.cyberforum.ru/android-dev/thread1715282.html
Нужно написать программу под андроид! Программирование Android
Всем доброго времени суток. Очень нужна помощь, по написанию программы под андроид. К сожалению навыками программирования не владею, но по поим понятием - знающего человека, это делов на пять...
Как реализовать вход в мобильное приложение через социальные сети? Программирование Android
В поиске форума не нашёл, подскажите или киньте ссылку (туториал) на то, как: 1) Разработать форму регистрации для мобильного приложения; 2) Вход в мобильное приложение через социальные сети; -...
Программирование Android Не открывается сохраненный файл http://www.cyberforum.ru/android-dev/thread1715174.html
написал текстовый редактор для Android, имеют кнопки сохранения и открытия по названию файла, файл сохраняется, но не открывается, пишет, что "Файл не существует" в манифесте всё прописано. ...
Программирование Android прошивка модем Прошивка модем ZTE mf 190 tcell подробнее

Показать сообщение отдельно
yura91
1 / 25 / 2
Регистрация: 23.10.2013
Сообщений: 2,305
20.04.2016, 11:20  [ТС]
да принимает но дело не в этом я и меньше нуля пробовал и по разному. Проблему решает только вызов clientSocket->disconnectFromHost(); на стороне Qt сервера(то есть разрыв соединения) тогда код после цикла выполняется. Но я не могу понять почему так? Получается BufferedReader слушает сокет постоянно(блокирует дальнейшие действия). Просто если я хочу отправить на сервер данные, затем получить ответ, затем опять что то отправить - то мне получается нужно вешать BufferedReader на сокет, а в отдельном потоке делать отправку данных на сервер(или другие действия не связанные с чтением) или же вызывать disconnect на сервере. Но это не очень удобно. Хочется все делать в одном не главном потоке и при одном установленном соединении. Может в Java есть концепция неблокирующих сокетов(которые не блокируют выполнение кода)?

Добавлено через 36 минут
можете обьяснить следующее. Когда я делаю без цикла read = reader.read(mData); и данные в канале есть для чтения, то все норм я получаю ответ от сервера, вывожу количество бай прочитанных, дальше код выполняется все отлично, но если я вызываю read = reader.read(mData); второй раз и данных в канале уже нет(ответ получен), то я не могу даже вывести переменную read и дальше код не выполняется, происходит как бы блокировка выполнения кода
То есть если данных для чтения нету то BufferedReader переходит как бы в режим ожидания этих данных так получается?
То есть получается как бы блокирующий сокет да?
А сокет можно перевести в неблокирующий режим в андроид. Просто интересно?
То есть если вызвать reader.read(mData); и данных в канале нет то код дальше блокируется не знаете почему?
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru