![]() |
|
Модераторы: LSD, AntonSaburov |
![]()
|
|
| Krio |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 20 Регистрация: 27.5.2006 Репутация: нет Всего: нет |
пытаемся подключиться к web-серверу и подаём запрос типа
GET / HTTP/1.1 Host: www.super-puper-mega-server.com User-Agent: super-puper-mega-browser/1.0 Connection: keep-alive Keep-Alive: 300 \r\n сервер выдаёт некий ответ и останавливается, не разрывая соединение. если читать этот ответ при помощи стандартной конструкции
то read() будет зависать после окончания ответа, наверное, пока сервер сам не закроет соединение. вопрос: как этого избежать? как узнать, что ответ закончился, что в буфере больше нет символов, не вызывая read()? p.s. server.available() == 0 по определению |
|||
|
||||
| LSD |
|
|||
![]() Leprechaun Software Developer ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 15718 Регистрация: 24.3.2004 Где: Dublin Репутация: 19 Всего: 538 |
1. использовать неблокируемое чтение: read(byte[]) 2. использовать SocketChannel -------------------- Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it. |
|||
|
||||
![]()
|
| Правила форума "Java" | |
|
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Java: Работа с сетью | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |