In the Qt document it is said: 
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.
But in the connect() function, setting the Qt::ConnectionType type as Qt::QueuedConnection means "The slot is invoked when control returns to the event loop of the receiver's thread. The slot is executed in the receiver's thread." and Qt::DirectConnection means "the slot is invoked immediately, when the signal is emitted."
The slots maybe not execute in order.
Are they conflicting?