QtQtConcurrent 使用方式


说明:QtConcurrent 的线程函数启动方式略述。

1) 全局函数或静态函 ,作为线程函数

1 void threadFunc() 2 { 3     //...add 
4 } 5 QtConcurrent::run(threadFunc);

2) 类成员函数作为线程函数

       

 1 class worker  2 {  3    public:
 5  Worker();
 7        ~Worker();
 9        void threadFunc(); 10        void start(); 11 };
13 void worker::threadFunc() 14 { 15    //... add
16 }
18 void worker::start() 19 { 20      QtConcurrent::run(this,&worker::threadFunc); 21 }

3) 结构体函数作为线程函数

 
 
 1 sturct worker  2  {  3      int ID;  4      void worker::threadFunc()  5  {  6        //... add
 7  }  8  };//end 
 9 
10 worker work; 11 QtConcurrent::run(&work,&worker::threadFunc);
 
 

 

 

 

补充:QtConcurrent默认使用全局线程池,经实测(CPU:i3-4150)双核四线程处理器,

开启的最大线程数即为4;


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM