2013-09-25 5 views
10

Можно ли установить приоритет для основного потока графического интерфейса, чтобы он имел более высокий приоритет по сравнению с другими потоками (QThread)?Установить приоритет для потока GUI в Qt

Моя цель - не замораживать графический интерфейс, в то время как другие потоки проводят интенсивное вычисление, которое может занимать CPU до 100% нагрузки. Было бы здорово, если бы кто-то мог поделиться тем, как GUI не замерзнет в течение этого периода, в то время как другие потоки вычислений все равно могут попытаться максимизировать использование ЦП.

Я думал об управлении другими потоками, поэтому я не запускаю слишком много потоков вычислений одновременно.

ответ

10

Изменить приоритет текущего потока, когда текущий поток графический интерфейс Тема:

int main(int argc, char ** argv) { 
    QApplication app(argc, argv); 
    QThread::currentThread()->setPriority(QThread::HighPriority); 
    ... 
} 
+0

Это именно то, что я ищу, и это, кажется, работает хорошо. Спасибо за помощь! –

Смежные вопросы