crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

4 страниц V  « < 2 3 4  
Ответить в данную темуНачать новую тему
> Передача файлов через интеренет
Алексей1153
  опции профиля:
сообщение 15.8.2010, 18:41
Сообщение #31


фрилансер
******

Группа: Участник
Сообщений: 2939
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


Цитата(RazrFalcon @ 15.8.2010, 20:27) *
включение слушалки

когда сокет-сервер создаётся, он инертен, сам по себе он ничего ещё не делает. Когда вызывается listen() , сервер начинает слушать входящие запросы на соединение от клиентов. Причём, обратной дороги нет - он будет слушать до талого снега! Если только не пересоздать хендл сокета в системе (по крайней мере так в винде). В студии я делал это через close()/create() сокета сервера, а в Qt это не прокатит, как так пАрные сокеты убьются. Тут, наверное, достаточно вызвать setMaxPendingConnections(0) для отключения слушалки совсем. Хотя, не проверял, что при этом произойдёт ))

Цитата(RazrFalcon @ 15.8.2010, 20:27) *
delete m_pServer; - такую запись никогда не встречал.

это всего лишь оператор C++ , возвращает в кучу память, выделенную под объект оператором new. В библиотеке Qt есть расслабуха - если класс произведён от QObject и имеет родителя, то delete автоматом вызывается для объекта. Но иногда удалить объект надо не затрагивая родитель.

Цитата(RazrFalcon @ 15.8.2010, 20:27) *
if(!m_pServer)return; - на что проверка?!

булево выражение (!X) эквивалентно (X==0)

Цитата(RazrFalcon @ 15.8.2010, 20:27) *
m_pPeer__=0; - что это делает

обнуляет указатель m_pPeer__. Странный вопрос...

Цитата(RazrFalcon @ 15.8.2010, 20:27) *
я так понял читает только 100 байт? И это только текст.

производится попытка чтения из приёмного буфера сокета максимум 100 байтов за раз - да
Это количество зависит от задачи, для данного примера сойдёт и константа 100 ))

Цитата(RazrFalcon @ 15.8.2010, 20:27) *
ну и последние, передачу файлов еще ты не писал, по крайней мере я не нашел.


так я сделал передачу строки - не нашёл что ли ?
А строка - это набор байтов. А файл тоже. Но большие объёмы данных могут потребовать спец-приёмов при передаче - это когда столкнёшься, сам увидишь, пока передавай всё разом )

Как потоковое видео приделать, я не знаю, но суть такая же - передаётся часть видеопотока, потом эта часть проигрывается, а в это время качается очередная часть
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
RazrFalcon
  опции профиля:
сообщение 15.8.2010, 19:36
Сообщение #32


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


Цитата(Алексей1153 @ 15.8.2010, 18:41) *
обнуляет указатель m_pPeer__. Странный вопрос...
То есть количество пиров становится 0, отключаем клиентов как я понял. Я имел ввиду логику выражения, то что обнуляем я понял, не понял что.
Цитата
так я сделал передачу строки - не нашёл что ли ?
Ну строку то я нашел, но думал она строго на текст, теперь разобрался.
Еще раз спасибо, буду прикручивать сюда что хотел, потом выложу готовый вариант.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 15.8.2010, 19:41
Сообщение #33


фрилансер
******

Группа: Участник
Сообщений: 2939
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


Цитата(RazrFalcon @ 15.8.2010, 22:36) *
То есть количество пиров становится 0

Срочно читать что-нибудь вроде "C++ для начинающих" - раздел про указатели!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
RazrFalcon
  опции профиля:
сообщение 15.8.2010, 19:45
Сообщение #34


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


Цитата(Алексей1153 @ 15.8.2010, 19:41) *
Срочно читать что-нибудь вроде "C++ для начинающих" - раздел про указатели!

Все понятно-понятно :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 15.8.2010, 19:49
Сообщение #35


фрилансер
******

Группа: Участник
Сообщений: 2939
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


Расскажи, что именно понятно :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
RazrFalcon
  опции профиля:
сообщение 15.8.2010, 20:00
Сообщение #36


Zombie Mod
*****

Группа: Участник
Сообщений: 1654
Регистрация: 24.5.2010
Из: Харьков
Пользователь №: 1752

Спасибо сказали: 64 раз(а)




Репутация:   212  


Цитата(Алексей1153 @ 15.8.2010, 19:49) *
Расскажи, что именно понятно :)
Понятно ровно столько - сколько нужно. Не люблю уж сильно вникать, хотя может это и проблема. Просто пользуюсь теми методами которые устраивают. Никогда к примеру указателями и структурами не пользовался, не по мне, ищю другие варианты, да и классы не люблю. По крайней мере пока устраивает.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 15.8.2010, 20:23
Сообщение #37


фрилансер
******

Группа: Участник
Сообщений: 2939
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


RazrFalcon, нууу, крайне неверная позиция :) Дело в том, что классы, структуры (да и указатели) - не методы, это основы языка C++

Если ты пишешь на этом языке программы - ты просто обязан хорошо знать эти вещи.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

4 страниц V  « < 2 3 4
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 25.4.2024, 8:05