|
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
![]()
Сообщение
#1
|
|
![]() Абсолютный новичок Группа: Пользователи Сообщений: 4 Регистрация: 24.5.2012 Пользователь №: 10 588 Спасибо сказали: 0 раз ![]() |
Отсылаю в сокет примерно такое:
$ADCGET file TTH/PPUROLR2WSYTGPLCM3KV4V6LJC36SCTFQJFDJKA 0 1000 ZL1| Получаю ответ: $ADCSND file TTH/PPUROLR2WSYTGPLCM3KV4V6LJC36SCTFQJFDJKA 0 1000 ZL1| И начинаю считывать эти 1000 байт. Но отсылатель со своей стороны сжимает 1000 байт и выходит меньше. Таким образом считав ~900 байт всё зависает в ожидании последних 100 байт. Вопрос прост, как узнать сколько байт придет? Простым таймаутом проблему не решить т.к. бывают подзависания да и нехорошо ступорить программу. |
|
|
![]()
Сообщение
#2
|
|
![]() 7 квадратиков ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 793 Регистрация: 21.1.2009 Пользователь №: 1 895 Спасибо сказали: 301 раз ![]() |
В схожей теме ответа так и не нашли.
|
|
|
![]()
Сообщение
#3
|
|
![]() Абсолютный новичок Группа: Пользователи Сообщений: 4 Регистрация: 24.5.2012 Пользователь №: 10 588 Спасибо сказали: 0 раз ![]() |
Пока точно не знаю, но похоже надо использовать поточное разжатие на сокете, тогда на выходе уже будет нужное количество байт.
|
|
|
![]()
Сообщение
#4
|
|
![]() RusHub team lead ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 030 Регистрация: 20.6.2008 Из: г. Королёв (Моск. обл.) Пользователь №: 46 Спасибо сказали: 1708 раз ![]() |
Внимательно смотри исходники клиента
|
|
|
![]()
Сообщение
#5
|
|
![]() Абсолютный новичок Группа: Пользователи Сообщений: 4 Регистрация: 24.5.2012 Пользователь №: 10 588 Спасибо сказали: 0 раз ![]() |
Внимательно смотри исходники клиента Не, в это дело я точно не полезу, там чёрт ногу сломит. Проще и быстрее самому разобраться, к тому же у меня уже есть на половину рабочий вариант. Использую InflaterInputStream (это в JAVA) к сожаление режет utf-8 символы, думаю это мой косяк. Еще один вариант использовать Inflater и после каждого распакованного байта делать проверку на законченность распаковки...думаю в других клиентах сделано аналогично, но проверять не буду. |
|
|
![]()
Сообщение
#6
|
|
![]() Абсолютный новичок Группа: Пользователи Сообщений: 4 Регистрация: 24.5.2012 Пользователь №: 10 588 Спасибо сказали: 0 раз ![]() |
Не хочу отдельно тему создавать для простого вопроса
$ADCGET file TTH/PPUROLR2WSYTGPLCM3KV4V6LJC36SCTFQJFDJKA 1024 2048 ZL1| первое число - номер байта с которого нужно передавать файл, а второе? номер последнего байта или количество байт от первого числа? |
|
|
![]()
Сообщение
#7
|
|
![]() 7 квадратиков ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 793 Регистрация: 21.1.2009 Пользователь №: 1 895 Спасибо сказали: 301 раз ![]() |
|
|
|
![]() ![]() |
Похожие темы
Тема | Ответов | Автор | Просмотров | Последнее сообщение | |
---|---|---|---|---|---|
![]() |
Как узнать диапазон ip-адресов другого пользователя? Например когда забанишь интернет адрес,а он с другого зайдет. |
2 | STIVAN | 10 119 | 19.3.2011, 14:35 Посл. сообщение: STIVAN |
![]() |
Размер шары хаба | 2 | dimajak | 7 412 | 18.5.2010, 4:05 Посл. сообщение: Accelerator |
![]() |
![]() о новых юзерах |
10 | voronf4 | 13 526 | 8.3.2010, 21:55 Посл. сообщение: voronf4 |
![]() |
Любопытно Узнать можно самому сделать(переделать) DC по исходникам или как их там н???? |
36 | Артём | 35 404 | 25.11.2009, 12:20 Посл. сообщение: dimetrius |
![]() |
ADCGET-ADCSND и размер файла | 4 | sweeny | 11 440 | 23.11.2009, 13:27 Посл. сообщение: sweeny |
![]() |
Как Узнать Диопазон Ip КАК УЗНАТЬ ДИОПАЗОН IP |
10 | Vizunchik | 13 423 | 16.11.2008, 23:14 Посл. сообщение: Sephiroth_Lukaw |
![]() |
Как Узнать Диопазон Ip КАК УЗНАТЬ ДИОПАЗОН IP |
0 | Vizunchik | 0 | 16.11.2008, 20:43 Посл. сообщение: mariner |
![]() |
Сейчас: 17.2.2025, 8:42 |