На самом деле это предупреждение на будущее. Нет никакого рандома, но это не означает, что разработчики потом не внесут каких-нибудь изменений, которые могли бы сортировать очередь вызовов для оптимизации скорости выполнения. Поэтому есть такое решение:
| Код | class X : public QObject { Q_OBJECT .... signals: void fooPriority1(); void fooPriority2(); void fooPriority3(); void fooPriority4();
slots: void emitFoo(); ... };
void emitFoo() { emit fooPriority1(); emit fooPriority2(); emit fooPriority3(); emit fooPriority4(); }
|
Т.е. вместо того, чтобы подключать сигнал к нескольким слотам - подключаем к одному, который выпускает в нужной последовательности остальные сигналы, а они уже должны быть соединены к нужным слотам. |