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

免费个人网站模板黄页网站大全在线看免费

免费个人网站模板,黄页网站大全在线看免费,房产集团网站建设,书店如何做网站目录 QThreadPool类 QRunnable类 应用场景示例 QThreadPool类 主要属性#xff1a; 1、activeThreadCount: 此属性表示线程池中的活动线程数#xff0c;通过activeThreadCount() 调用。 2、expiryTimeout: 线程活着的时间。没有设置expiryTimeout毫秒的线程会自动退出 1、activeThreadCount: 此属性表示线程池中的活动线程数通过activeThreadCount() 调用。 2、expiryTimeout: 线程活着的时间。没有设置expiryTimeout毫秒的线程会自动退出此类线程将根据需要重新启动。默认的expiryTimeout为30000毫秒 (30 秒)。如果expiryTimeout为负,则新创建的线程将不会过期, 在线程池被销毁之前, 它们将不会退出。通过expiryTimeout()调用通setExpiryTimeout(int expiryTimeout)设置 。  3、maxThreadCount : int 表示线程池使用的最大线程数。     通过maxThreadCount() 调用通过setMaxThreadCount(int maxThreadCount) 设置    注意:即使maxThreadCount限制为零或为负数, 线程池也至少有1个线程。   主要成员函数 QThreadPool *QThreadPool::globalInstance() //返回Qt应用程序全局线程池实例。 void reserveThread() //预约一个线程这个函数总是会增加活动线程的数量。这意味着通过使用这个函数activeThreadCount()可以返回一个大于maxThreadCount()的值。 void releaseThread() //释放以前通过调用reserveThread()预约的线程。 如果不先预约一个线程调用这个函数会临时增加maxThreadCount()。当线程进入休眠等待时能够允许其他线程继续。 要记得在完成等待时调用reserveThread()以便线程池可以正确控制activeThreadCount()。 void QThreadPool :: startQRunnable * runnableint priority 0 //在任务数量小于maxThreadCount时为每个runnable任务预约一个线程。超过maxThreadCount时将任务放入运行队列中。priority 参数用来设置线程运行优先级。 bool tryStart(QRunnable *runnable) //此方法尝试预约一个线程来运行runnable。 如果在调用的时候没有线程可用那么这个函数什么都不做并返回false。否则将使用一个可用线程立即运行runnable并返回此函数true。 void clear() //用于删除在任务队列中还没有启动的任务。 bool tryTake(QRunnable *runnable) //如果runnable任务还没开始运行那么从队列中删除此runable任务此时函数返回true如果runnable任务已经运行返回false。 只用来删除runnable-autoDelete() false的runnable任务否则可能会删错任务. bool waitForDone(int msecs -1) //等待msecs毫秒, 以便所有线程退出并从线程池中移除所有线程。如果删除了所有线程, 则返回true 否则, 它将返回false。默认等待时间为-1即等待最后一个线程退出。 QRunnable类 QRunnable类是所有runable对象的基类。 QRunnable类是一个接口, 用于表示需要执行的任务或代码段, 具体任务在run() 函数内部实现。 可以使用QThreadPool在各个独立的线程中执行代码。如果autoDelete() 返回true (默认值), QThreadPool将自动删除QRunnable 。使用setAutoDelete() 可更改是否自动删除。 主要成员函数 bool autoDelete() const 获取自动删除是否启用启用返回true未启用返回false。 virtual void run() 0 纯虚函数在QRunnable子类中实现详细任务处理逻辑。 void setAutoDelete(bool autoDelete) 如果autoDelete为 true, 则启用自动删除。否则自动删除将被禁用。 如果启用了自动删除, QThreadPool将在调用 run () 函数返回后自动删除此runable对象。否则, runable对象所有权不属于线程池由开发人员管理。 请注意, 必须先设置此标志(默认构造函数已经将其设置为true)然后才能调用 QThreadPool:: start()。在QThreadPool:: start() 之后调用此函数将导致不可预测后果。 调用此函数将导致不可预测后果。 应用场景示例 #ifndef PRINTTASK_H #define PRINTTASK_H#include QObject #include QRunnableclass PrintTask : public QObject, public QRunnable {Q_OBJECTpublic:PrintTask();~PrintTask(); protected:void run();signals://注意要使用信号采用QObejct 和 QRunnable多继承记得QObject要放在前面void mySignal(); };#endif // PRINTTASK_H #include printtask.h #include QThread #include iostream using std::cout; using std::endl;PrintTask::PrintTask() { }PrintTask::~PrintTask() {}//线程真正执行的内容 void PrintTask::run() {cout PrintTask run 被调用调用线程ID为 QThread::currentThread() endl; } #include QCoreApplication #include QThreadPool #include printtask.hint main(int argc, char *argv[]) {QCoreApplication a(argc, argv);//设置最大线程数为3的一个线程池QThreadPool pool;pool.setMaxThreadCount(3);for(int i 0; i 20; i){pool.start(new PrintTask());}return a.exec(); }
http://www.hkea.cn/news/14502048/

相关文章:

  • 协会网站建设哪里实惠seo系统是什么
  • 源代码怎么做网站企业展示型网站 建站系统
  • 小说网站的图片长图怎么做的沈阳集团网站建设
  • 建设网站的情况说明书建设银行的投诉网站
  • 建立网站主页注意那些方面移动互联网开发心得体会
  • 网站如何做质保系统8一9岁的手工
  • 自建站seo如何做南阳网站建设费用
  • 国外网站用什么dns烟台市建设工程交易中心网站
  • 天河网站建设公司电子商务网站建设重点难点
  • 自助做网站傻瓜式自助建站工具网站彩票怎么做
  • 水产养殖网站模板源码网站制作前必须做的事情有哪些
  • 绵阳定制网站建设福田祥菱v1
  • 长沙做企业网站php 网站建设 教学
  • 网站建设与管理专业的行业发展青岛自动seo
  • 北京网站建设学校无线网络设计实验报告
  • 淘宝发布网站建设创意产品设计及介绍
  • 在国际网站上做贸易怎么发货网站管理建设需进一步加强
  • 湖南建设银行官网网站首页中国建设银行积分网站
  • ui网站设计模板推销网站话术
  • 域名已有服务器也有怎么做网站网页设计具体方案
  • 外链兔seo描述是什么意思
  • 网站建设规划与管理 试卷公司网站建设开源平台
  • 备案关闭网站建设影响地方网站程序
  • 有什么专门搜试卷做的网站零基础可以用阿里云做网站吗
  • 文山州住房和城乡建设网站梅林固件做网站
  • 做棋牌网站赚钱吗淘宝网站建设的目标是什么
  • 用电脑做网站的历史在哪里找wordpress在线储存
  • 怎么自己建一个论坛网站电子商务网站建设与运营 说课
  • 网站安全等级评审在哪里做个人html网站
  • 建设银行网站打不开用什么浏览器wordpress怎么和手机连接数据库