如何设置QTConcurrent操作的最大线程数?

时间:2012-07-15 16:53:34

标签: multithreading qt

我在项目列表上运行QTConcurrent :: Map来执行一些图像处理任务。这在只有几个线程的机器上运行良好,但由于处理代码的内存要求而在具有大量线程的机器上遇到问题。

是否可以为QTConcurrent操作设置最大并发线程数,或者我是否需要使用QThreadPool重新编码?我有更多控制权?

感谢您的任何建议。

1 个答案:

答案 0 :(得分:14)

QtConcurrent::map使用全局线程池。

您可以使用QThreadPool::globalInstance()->setMaxThreadCount(n)更改其主题计数。