本文主要是介绍QT---QtConcurrent---Run,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.QtConcurrent
QtConcurrent 是命名空间 (namespace),它提供了高层次的函数接口 (APIs),可根据计算机的 CPU 核数,自动调整运行的线程数目。
模块:concurrent
2.run()
QFuture<T> run(Function, ...)
Function 必须是指向函数的指针,函数返回T型对象。省略号代表变量参数列表,如果给出参数,这些参数
在run被调用的时候,传递给Function。因此,这些参数必须要与Function的形式相匹配。
说明:参数最多5个。
template <typename T, typename Param1, typename Arg1, typename Param2, typename Arg2, typename Param3, typename Arg3, typename Param4, typename Arg4, typename Param5, typename Arg5>
QFuture<T> run(T (*functionPointer)(Param1, Param2, Param3, Param4, Param5), const Arg1 &arg1, const Arg2 &arg2, const Arg3 &arg3, const Arg4 &arg4, const Arg5 &arg5);
(1)运行一个外部函数:
extern void test();
QFuture<void> future = QtConcurrent::run(test);
这篇关于QT---QtConcurrent---Run的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!