当前位置: 首页 > news >正文

建立网站需要投入的成本seo网站页面优化

建立网站需要投入的成本,seo网站页面优化,南通企业网页制作,金华市建设技工学校教育培训网站1.简介 QThreadPool类管理一个QThread集合。 QThreadPool管理和重新设计单个QThread对象,以帮助降低使用线程的程序中的线程创建成本。每个Qt应用程序都有一个全局QThreadPool对象,可以通过调用globalInstance来访问该对象。 要使用其中一个QThreadPool…

1.简介

QThreadPool类管理一个QThread集合。
QThreadPool管理和重新设计单个QThread对象,以帮助降低使用线程的程序中的线程创建成本。每个Qt应用程序都有一个全局QThreadPool对象,可以通过调用globalInstance来访问该对象。
要使用其中一个QThreadPool线程,请子类化QRunnable并实现run虚拟函数。然后创建该类的一个对象,并将其传递给QThreadPool::start。

主要特点:

  • 线程复用:线程池中的线程可以重复使用,减少了线程创建和销毁的开销。
  • 资源管理:线程池可以帮助管理线程的生命周期,包括线程的创建、销毁和线程数的控制。
  • 任务队列:线程池通常与一个任务队列一起使用,允许你将任务添加到队列中,由线程池中的线程执行。

2.常用方法

  • globalInstance(): 获取全局的 QThreadPool实例。
  • maxThreadCount(): 获取线程池中最大线程数。
  • setMaxThreadCount(int): 设置线程池中最大线程数。
  • activeThreadCount(): 获取当前活跃的线程数。
  • expiryTimeout(): 获取线程的最长存活时间。
  • setExpiryTimeout(int): 设置线程的最长存活时间。
  • start(QRunnable *): 将一个 QRunnable 对象添加到线程池的任务队列中,并在线程池中的一个线程上执行它。
  • tryStart(QRunnable *): 尝试立即在一个空闲线程上执行 QRunnable 对象,如果失败则返回 false
  • waitForDone(int): 阻塞调用线程,直到所有任务执行完毕或超时。
  • clear(): 清空任务队列,停止所有正在执行的任务。
  • releaseThread(): 通知线程池当前线程已经完成了一个任务,可以重新被使用。

3.示例

我们创建了一个简单的 QRunnable 子类 MyRunnable,并在主函数中使用了 QThreadPool 来执行 4 个任务。我们设置了线程池的最大线程数为 4,这意味着同时最多有 4 个线程在执行任务。其他的任务会在线程池中的线程变为可用时被执行。

#include "widget.h"
#include "ui_widget.h"
#include <QRunnable>
#include <QThreadPool>
#include <QDebug>
#include <QMutex>
#include <QList>QList<int> g_list;
QMutex g_mutex;class MyRunnable : public QRunnable
{
public:void run() override{while(true){g_mutex.lock();if(g_list.size() == 0){g_mutex.unlock();break;}qDebug() << "Task running in thread:" << QThread::currentThread() << "deal num "<<g_list.first();g_list.pop_front();g_mutex.unlock();}qDebug() << "Task running in thread:" << QThread::currentThread() << "finished ";}
};Widget::Widget(QWidget *parent) :QWidget(parent),ui(new Ui::Widget)
{ui->setupUi(this);for(int i=0;i<20;i++){g_list.append(i);}QThreadPool::globalInstance()->setMaxThreadCount(4);for (int i = 0; i < 4; ++i){MyRunnable *r = new MyRunnable();r->setAutoDelete(true);QThreadPool::globalInstance()->start(r);}
}Widget::~Widget()
{delete ui;
}

运行结果:

4.更多推荐

libVLC 专栏介绍-CSDN博客

Qt+FFmpeg+opengl从零制作视频播放器-1.项目介绍_qt opengl视频播放器-CSDN博客

QCharts -1.概述-CSDN博客

http://www.yayakq.cn/news/372962/

相关文章:

  • 做毕业设计的参考文献网站桂林最好玩的5个地方
  • 网站建设销售提点20个点pr模板免费下载网站
  • 如何搜索到自己的网站深圳网页设计兴田德润放心
  • 做网站的前提上海企业网站排名优化
  • 网站制作视频教学影视自助建站官网
  • 网站在谷歌怎么做排名知乎自媒体平台注册
  • 汕头网站制作找哪里公司网站SEO优化哪个做得好
  • 遂宁网站建设公司哪家好学校网站建设发展历程
  • 搭建cms网站黑龙省建设厅网站首页
  • 瑞安市网站建设网站设计站
  • 做网站放视频怎样做网站二维码
  • 网页建站分为几个类型宣传软文推广
  • 用asp.net做的网站框架静态网站开发项目实验报告
  • 自己电脑做服务器网站网络科技有限公司简介范文
  • 石狮建设局网站长沙棋牌软件开发公司
  • 网站背景颜色代码营销培训心得
  • 手机网站微信链接怎么做目前做汽配的网站有哪些
  • 汶上外贸网站建设如何申请单位邮箱
  • 二级域名做很多网站网络品牌是什么
  • 成都网站制作设计公司企业网站设计html
  • 俄罗斯门户网站做upc条形码的网站
  • 网站建设骗子wordpress 经典简约主题
  • 明星用什么软件做视频网站免费域名注册网中国万网
  • 南昌餐厅网站建设无锡做网站要多少钱
  • 网站建设优化推广系统图片外链网站
  • 好看手机网站推荐綦江建站哪家正规
  • 学网站开发有用么网站公司企业网站
  • 做网站如何把栏目放到首页网站想做个链接怎么做的
  • 网站平台建设需要哪些人员网站建设需要注册42类吗
  • mip网站重庆网站定制哪家好