What you specified will be a direct connection from the signal to the slot. This means that at the moment you emit handySignal , it must go and execute all connected slots. As soon as all slots (i.e. handySlot ) return, then the emitter will return and finish the constructor.
If you indicated the queue in the queue , as it would have been used, if it were a connection from a signal in one thread to a slot in another thread, the request will be placed in the event loop that must be executed.
So, I would say: Yes, it seems that a signal is being emitted from a temporary object if you do not miss links that will be invalid.
The example seems a bit arbitrary, since I really see no reason to create a connection in the constructor with the signal that you then emit, and here it is. You can simply name this slot, unless you expect the object to be created in another thread that you did not mention.
Edit:
According to @Kamil's comment, it should be noted that if the connection type is not specified, then defailt is an auto-connection, which means that the actual type will be determined by whether the target slot in a different thread than the sender. Without slicing, it would match DirectConnection. When using streaming, it will ultimately be a QueuedConnection.
source share