Qt6.3.1中QtConcurrentRun等效替代模块咨询
Qt6中QtConcurrentRun的替代方案
没错,Qt6里已经把原QtConcurrentRun的相关功能完全整合到QtConcurrent模块中,不再单独提供<QtConcurrentRun>头文件,直接切换到QtConcurrent模块即可实现等效功能。
具体修改步骤:
- 替换头文件:将代码中的
#include <QtConcurrentRun>替换为#include <QtConcurrent> - 更新项目配置:
- 若使用CMake:确保配置中包含Concurrent组件,示例如下:
find_package(Qt6 REQUIRED COMPONENTS Concurrent) target_link_libraries(你的项目名称 PRIVATE Qt6::Concurrent) - 若使用qmake:在
.pro文件中添加模块依赖:QT += concurrent
- 若使用CMake:确保配置中包含Concurrent组件,示例如下:
- 代码调用兼容:原
QtConcurrent::run()接口在Qt6中完全保留,无需修改调用逻辑,比如你之前写的QtConcurrent::run(yourFunction)可以直接继续使用。
另外,Qt6中QtConcurrent模块的所有API都统一通过<QtConcurrent>头文件引入,项目中其他旧的QtConcurrent相关头文件(如<QtConcurrentMap>等)也可以一并替换成这个统一头文件。
内容的提问来源于stack exchange,提问作者jwm
相关产品推荐
相关产品推荐

