说明 Qt中可以有多种使用线程的方式: 继承 QThread,重写 run() 接口: 使用 moveToThread() 方法将 QObject 子类移至线程中,内部的所有使用信号槽的槽函数均在线程中执行: 使用 QThreadPool 线程池,搭配 QRunnable: 使用 QtConcurrent: 本文跳过第1和第2中方式,介绍后面两种 线程池 创建和销毁线程需要和OS交互,少量线程影响不大,但是线程数量太大,势必会影响性能,使用线程池可以这种开销: 线程池维护一定数量的线程,使用时,…