Yes, you are right. You may only choose between running your own loop and perform some work (in run() method) or running event loop (invoking exec() method).Originally Posted by high_flyer
The solution you mentioned is the usual sort of things, but it does not solve anything :-). You have main thread where you invoke app.exec(). But before calling exec() you usually create other thread and start it. Suppose that you are running your own loop (not invoking exec()). In this case new thread is considered as a usual object which can receive signals, but the slots of this new thread will be executed in the main thread (generally in the thread where you created your child thread and connected signals to the slots)
But why do you want to pass signals to your child thread? If you want to pass any information to your child thread without any event loop I'm afraid you will have to do this via members of the child thread object (using mutex, of course)
Bookmarks