On Tuesday, 28 March 2023 13:23:58 PDT Stefan Seefeld wrote: > if you have a look at the little sample script I attached to my mail you'll > see that I'm actually constructing the application object within the > function that is executed in the other thread. > I do however import PyQt5 modules at the top of my script, and if I move > those imports into the function the warning goes away. > Does this suggest that PyQt5 itself instantiates a QApplication as a global > object ?
No. It suggests that PyQt5's loading process creates at least one QObject, but not a QCoreApplication/QApplication object. And as I said about the libraries themselves, I can't guarantee that one of them won't create such object just by linking to it. I can only guarantee QtCore doesn't (in 6.5; I can't guarantee earlier versions). You must cause there to be NO QObject creations at all, if you want to create your QCoreApplication in another thread. If you can't ensure that, then you must accept defeat and create the QCoreApplication in that thread where the first QObject was created. -- Thiago Macieira - thiago.macieira (AT) intel.com Cloud Software Architect - Intel DCAI Cloud Engineering
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest