I have a QObject that has multiple slots connected to one of its signals. Is there an order in which of each of these slots are called when the signal is emitted?
In Qt v4.5 and earlier: No, the order is undefined as can be seen in the documentation here:
If several slots are connected to one signal, the slots will be executed one after the other, in an arbitrary order, when the signal is emitted.
Edit: From version 4.6 onwards this is no longer true. Now the slots will run in the order they are connected. The relevant paragraph of the current documentation:
If several slots are connected to one signal, the slots will be executed one after the other, in the order they have been connected, when the signal is emitted
1.4m articles
1.4m replys
5 comments
57.0k users