Details
-
Bug
-
Resolution: Unresolved
-
P1: Critical
-
None
-
5.15.2, 5.15.3, 6.2.1, 6.2.3, 6.3.0 Beta1
-
None
-
Ubuntu 20.04 with X and without X (eglfs)
Ubuntu 18.04 with X and without X (eglfs)
Boot2Qt 5.15.3 Intel NUC
Description
Hello!
I have a big project. In the attached example, I've simplified everything a lot. But it shows the heart of the problem. I am transmitting a 100 byte packet via VCP. The port is looped, that is, the transmitter output is physically connected to the receiver input. Baud rate 1,000,000 baud. That is, the packet transmission time is negligible. I am measuring the duration of an entire transaction with a tick of 20 milliseconds. For Qt 5.14.2, it does not exceed 1 tick (that is, 20 ms) when the 3D engine is running (that is, the QML code contains a Scene3D object). But for Qt 5.15.2, the transaction time increases by 3-5 times and is respectively 100 ms. I can get a transaction in one tick for Qt 5.15.2 only if I remove the Scene3D object from the QML code. It is unacceptable for my project to receive packets with such a delay. So I cannot upgrade to Qt 5.15.2. I think this is some kind of bug. It looks like the thread of the 3D engine is somehow blocks the QSerialPort thread or blocks the main thread.