Russian Qt Forum
Ноябрь 26, 2024, 13:53 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QUdpSocket. Как просто очистить буфер с датаграммами ?  (Прочитано 3910 раз)
Alf
Гость
« : Июль 24, 2013, 15:11 »

Как очистить буфер с датаграммами для QUdpSocket ? Без переподключения.

Ситуация такова. Пришла первая датаграмма, я не хочу её читать, а просто хочу очистить содержимое буфера сокета и ждать следующую.
Если я ничего не делаю с первой пришедшей датаграммой, то не приходит сигнал readyRead от сокета при поступлении последующих датаграмм.

Конечно, можно прочитать первую датаграмму и просто никак её не обрабатывать, но зачем лишние действия, если мне нужно просто обнулить буфер ?

QAbstractSocket::abort() не подходит, выполняется отключение сокета.
То, что мне нужно в терминологии мануала - discarding any pending data.
Записан
mutineer
Гость
« Ответ #1 : Июль 24, 2013, 15:47 »

Цитировать
QUdpSocket::readDatagram( char * data, qint64 maxSize, QHostAddress * address = 0, quint16 * port = 0 )
If maxSize is 0, the datagram will be discarded.

Такое подойдет?
Записан
Alf
Гость
« Ответ #2 : Июль 24, 2013, 16:20 »

Да, именно это и нужно ! Спасибо !
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.047 секунд. Запросов: 21.