Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-48087

[REG 5.3.2->5.5.0] QUdpSocket stops emitting readyRead() signals under heavy Udp traffic

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • P2: Important
    • None
    • 5.5.0
    • Network: Sockets
    • None

    Description

      Under heavy load(UdpTraffic to the bound socket),
      QUdpSocket starts receiving datagrams(and emitting readyRead()), but it will stop after a while.
      In this state hasPendingDatagrams() returns true.
      The QUdpReceiver does not emit the signal readyRead() any more, even though the slot connected to readyRead() reads all datagrams until
      hasPendingDatagrams() returns false.

      This can be reproduced in Qt 5.5.0 but not in Qt 5.3.2
      with the broadcast examples in examples/network, when applying the attached diff to the broadcast sender. This patch simply increases the amount of sent messages.
      The broadcastreceiver will stop receiving messages(displaying a fixed message number), while the broadcastsender still sends messages.
      I would expect the broadcastreceiver to continue(->This is exacly what's happening in Qt 5.3.2)

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              thiago Thiago Macieira
              kmwbg Benno Grolik
              Votes:
              1 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes