Qt QEventLoop CPU использует максимум

Всякий раз, когда я бегу QEventLoop в ожидании потока, чтобы завершить фоновую работу, загрузка процессора возрастает до 100%, даже если поток выполняет много функций в ожидании и не выполняет интенсивных вычислений. Это цикл событий, который загружает процессор. Есть ли способ настроить QEventLoop работать медленнее и сэкономить процессор?

Вот пример:

WorkerThread thread;
QEventLoop eventLoop;
QTimer threadTimer;

threadTimer.setSingleShot(true);
connect(&threadTimer, SIGNAL(timeout()), &eventLoop, SLOT(quit()));
connect(&thread, SIGNAL(finished()), &eventLoop, SLOT(quit()));

threadTimer.start(180000);
thread.start();
eventLoop.exec(QEventLoop::ExcludeUserInputEvents);
if(threadTimer.isActive())
{
threadTimer.stop();
}

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]