说明
用QtConcurrent编写的程序会根据可用的处理器内核数自动调整使用的线程数。
QtConcurrent包括用于并行列表处理的功能性编程样式API,包括用于共享内存(非分布式)系统的MapReduce和FilterReduce实现,以及用于在GUI应用程序中管理异步计算的类:
- Concurrent Map and Map-Reduce
- QtConcurrent :: map()将函数应用于容器中的每个项目,就地修改这些项目。
- QtConcurrent :: mapped()类似于map(),不同之处在于它返回带有修改的新容器。
- QtConcurrent :: mappedReduced()类似于mapping(),不同之处在于修改后的结果被缩减或折叠为单个结果。
- Concurrent Filter and Filter-Reduce
- QtConcurrent :: filter()根据过滤器功能的结果从容器中删除所有项目。
- QtConcurrent :: filtered()类似于filter()&#