Использую QThreadPool, делаю setMaxThreadCount(10), ошибок нету, все работает, только потоков в тредпуле все равно 4(количество ядер на машине), понять совершенно не могу, почему. Кто сталкивался с таким и как решали проблему?
setMaxThreadCount устанавливает максимальное кол-во потоков, которые может использовать 'QThreadPool'. 'activeThreadCount' покажет кол-во потоков, которые используются прям сейчас. Создавать сразу много потоков нет смысла. Но если Вы создадите достаточно заданий, может быть 'QThreadPool' и создаст их. Но тут опять же все сложно - если задачи работают с сетью/диском и медленные, то много потоков может быть оправданно. Если же задачи тяжелые (кодирование видео, биткоины, перебор паролей), то кол-во потоков по кол-ву ядер оптимальное. Увеличение кол-ва потоков не даст прироста.
Для дальнейшего понимания, почитайте о законе Амдала.
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости