Проблема в том, что вы создаете таймер неявно основным потоком при создании объекта потока.Это потому, что ваш таймер является членом вашего класса потока.
Когда вы пытаетесь запустить таймер, вы работаете в другом потоке (в run()
), а не в потоке, где был создан таймер,который выдает предупреждение.
Вам необходимо создать таймер в потоке, в котором вы хотите его запустить :.Измените объявление m_notificationTimer
в вашем NotificcationThread
классе с
QTimer m_NotificationTimer;
на
QTimer* m_NotificationTimer;
и создайте таймер в run()
с помощью
m_NotificationTimer = new QTimer(this);
m_NotificationTimer->setInterval(interval);
m_NotificationTimer->start();