使用QThreadPool線程池控制多個線程 - sbw Blog

使用QThreadPool線程池控制多個線程

来源: 石博文博客 | 浏览: 8527 | 评论: 0 发表时间: 2014-04-20

QThreadPool 是用來管理單個的 QThread 對象, 來控制固定有多個線程並發執行, 使得程序能更充分的使用計算機的資源, 提高程序運行效率.



每個Qt程序都會有一個全局的QThreadPool對象,訪問它可以使用globalInstance()


QThreadPool所管理的對象,需要繼承QRunnable並且實現一個run()的虛函數.


每個線程執行對應的任務,當把線程創建後,使用QThreadPool::start()來啓動線程.下面的代碼創建了100個子線程來異步工作.


每個線程所執行的指令爲隨機停止一段時間,然後輸出當前線程Id.


下面是運行輸出:


示例代碼下載

QT

没有人评论过此文,还不快抢个沙发
  • 昵称: *
  • 邮箱:
  • 网址:
  • 记住我的信息
  • Color
  • Red
  • Blue
  • Code
  • bash
  • cpp
  • css
  • java
  • js
  • perl
  • php
  • python
  • ruby
  • sql
  • xml