Здравствуйте, гость ( Вход | Регистрация )
kibsoft | Дата 16.4.2010, 19:46 |
после передачи файла может это событие где-то останавливает поток.(коль скоро ты используешь чужой код, может ты его не полностью изучил) сам несколько минут назад соединил обрыв сокета со слотом quit() и забыл..извиняюсь |
|
BRE | Дата 16.4.2010, 19:39 |
Без кода я затрудняюсь ответить. | |
Litkevich Yuriy | Дата 16.4.2010, 19:37 |
после передачи файла может это событие где-то останавливает поток.(коль скоро ты используешь чужой код, может ты его не полностью изучил) |
|
kibsoft | Дата 16.4.2010, 19:28 |
Цитата Стек TCP сам будет этим рулить, в зависимости от пропускной способности. Понятно. Цитата Смысл чтения по частям больше в том, что бы не загружать большие файлы в память сразу. Да, это я знал Нарушу правила, не буду создавать новую тему:
В run() я запускаю цикл событий exec(), но явно сам его не завершаю, но все-таки после передачи файла объект(fileSender) сам уничтожается (вывел на консоль из деструктора). Это мне не мешает, но я просто не пойму почему он завершается? |
|
BRE | Дата 16.4.2010, 19:19 |
Спасибо! Под себя немного переделал, все работает! И последний вопрос, но не о программировании: какими частями лучше передавать файл (сколько байт), если ориентироваться на LAN-сеть? Или 64Кб нормально как в вашем коде? Стек TCP сам будет этим рулить, в зависимости от пропускной способности. Смысл чтения по частям больше в том, что бы не загружать большие файлы в память сразу. |
|
kibsoft | Дата 16.4.2010, 19:14 |
Посмотри эту тему, там я выкладывал архивы с тестовым проектом, передающим файл: http://www.forum.crossplatform.ru/index.ph...c=4296&st=0 Спасибо! Под себя немного переделал, все работает! И последний вопрос, но не о программировании: какими частями лучше передавать файл (сколько байт), если ориентироваться на LAN-сеть? Или 64Кб нормально как в вашем коде? |
|
BRE | Дата 16.4.2010, 7:07 |
Посмотри эту тему, там я выкладывал архивы с тестовым проектом, передающим файл: http://www.forum.crossplatform.ru/index.ph...c=4296&st=0 |
|
kibsoft | Дата 16.4.2010, 0:25 |
Сделал, чтобы просто байты отсылались без всяких структур типа QByteArray, но в сокет(tcpSocket->write(bytes) пишется меньше данных чем было прочитано в bytes.. ПРобовал flush() - не помогает, из-за чего такое может быть? |
|
kibsoft | Дата 14.4.2010, 16:36 |
BRE, спасибо за разные подсказки! Сейчас посидел, подумал - неправильно вообще я алгоритм организовал, понял в чем дело, буду перерабатывать. Загвоздка как раз в типе запроса(request). | |
kibsoft | Дата 14.4.2010, 15:08 |
Вы уже это писали Я же сказал, что еще вчера это исправил, но все равно не работает. У меня с quint8 сейчас. | |
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 26.4.2024, 1:07 |