It doesn't matter where the event is posted (or a queued signal is emitted) from. What does matter is where the receiver object lives.
If the receiver lives in the main thread (*), the event gets added to the event queue of the main thread. QCoreApplication::processEvents() is there for processing pending events from the main thread's event queue and is not safe to be called from another thread than the main thread.
(*) with "main thread" I mean the same thread where the application object lives
Bookmarks