Название: QSocket и очень много данных Отправлено: Sir_J от Август 12, 2005, 15:32 Как в Qt правильно прочитать данные и сокета.
если их очень много ? У нас есть сервер на который мы телнетимся(telnet localhost port), и он сразу отдаем много данных (около 500Kb). Если использовать такой код Код:
то мы читаем только 1024 символа и все :( Если использовать такой код Код:
то читаем ~ 130 Kb а дальше все финиш :( Как же правильно прочитать много данных ? Читать порциями (как ?) Очищать буфер перед приемом новых данных (как?) Если можно приведите кусочек рабочего кода Спасибо. Название: QSocket и очень много данных Отправлено: Sergeich от Август 12, 2005, 15:58 Все зависит от того как ты хочешь работать с сокетом - синхронно или асинхронно, и от признака конца сообщения ( если он вообще есть )
Название: QSocket и очень много данных Отправлено: DenKor от Август 12, 2005, 15:58 Если я не ошибаюсь, то надо использовать функцию чтения данных в качестве слота, а не вызывать непосредственно.
Название: QSocket и очень много данных Отправлено: west от Август 12, 2005, 17:43 По-моему, надо читать до тех пор, пока socket->bytesAvialble()...
Название: QSocket и очень много данных Отправлено: Sir_J от Август 13, 2005, 13:42 Всем спасибо
проблема решена Я просто для того чтобы проверить все ли данные пришли пытался вывести их qWarning ом у которого внутренний буфер ограничен :) |