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

网站建设煊煊网重庆优化网站排名

网站建设煊煊网,重庆优化网站排名,wordpress文章图片显示大图,wordpress cos-html-cache目录 QT提供延时 1.自定义延时 2.使用QElapsedTimer 3.使用事件循环 4.跨平台延时 QT提供延时 这里提供四种方法#xff1a; 1、多线程程序使用QThread::sleep()或者QThread::msleep()或QThread::usleep()或QThread::wait()进行延时处理。 Sleep不会释放对象锁#x…目录 QT提供延时 1.自定义延时 2.使用QElapsedTimer 3.使用事件循环 4.跨平台延时 QT提供延时 这里提供四种方法 1、多线程程序使用QThread::sleep()或者QThread::msleep()或QThread::usleep()或QThread::wait()进行延时处理。 Sleep不会释放对象锁其他线程无法访问对象因此会阻塞线程而Wait会释放对象锁使得其他线程能够访问该对象。 1.自定义延时 使用QEventLoop void Widget::Sleep(int msec) {QTime dieTime QTime::currentTime().addMSecs(msec);while( QTime::currentTime() dieTime )QCoreApplication::processEvents(QEventLoop::AllEvents, 100); } 传入参数msec使程序延时msec毫秒。这种方法不会阻塞当前线程尤其适合Qt的单线程带UI程序或者UI线程因为线程阻塞时 很明显的现象就是UI卡死。当然你也可以更改addMSecs为addSecs使程序延时msec秒。 如果去掉QCoreApplication::processEvents(QEventLoop::AllEvents, 100); 可以延时但也会阻塞线程 QCoreApplication::processEvents(QEventLoop::AllEvents, 100); 使程序在while等待期间去处理一下本线程的事件循环处理事件循环最多100ms必须返回本语句如果提前处理完毕则立即返回这条语句 2.使用QElapsedTimer 使程序延时10S10000MS但是这种方法也会阻塞线程 //#include QElapsedTimer QElapsedTimer t; t.start(); while(t.elapsed()10000); 3.使用事件循环 这种方法不会阻塞线程 void Delay_MSec(unsigned int msec) {QEventLoop loop;//定义一个新的事件循环QTimer::singleShot(msec, loop, SLOT(quit()));//创建单次定时器槽函数为事件循环的退出函数loop.exec();//事件循环开始执行程序会卡在这里直到定时时间到本循环被退出 } 4.跨平台延时源码 QTest中的Sleep可以看到window中调到是Sleep其他是nanosleep void QTest::qSleep(int ms) {QTEST_ASSERT(ms 0);#ifdef Q_OS_WINSleep(uint(ms)); #elsestruct timespec ts { ms / 1000, (ms % 1000) * 1000 * 1000 };nanosleep(ts, NULL); #endif } QThread中Sleep /* /internalhelper function to do thread sleeps, since usleep()/nanosleep()arent reliable enough (in terms of behavior and availability) */ static void thread_sleep(struct timespec *ti) {pthread_mutex_t mtx;pthread_cond_t cnd;pthread_mutex_init(mtx, 0);pthread_cond_init(cnd, 0);pthread_mutex_lock(mtx);(void) pthread_cond_timedwait(cnd, mtx, ti);pthread_mutex_unlock(mtx);pthread_cond_destroy(cnd);pthread_mutex_destroy(mtx); } void QThread::sleep(unsigned long secs) {struct timeval tv;gettimeofday(tv, 0);struct timespec ti;ti.tv_sec tv.tv_sec secs;ti.tv_nsec (tv.tv_usec * 1000);thread_sleep(ti); }
http://www.w-s-a.com/news/946111/

相关文章:

  • 临沂seo网站推广wordpress新编辑器
  • c2c网站设计店面logo设计制作
  • 网站建设任务执行书重庆今天新闻事件
  • 怎样发布自己的网站南宁制作网站公司
  • wordpress装多站点百度查一下
  • 怎么优化一个网站搭建网站免费空间
  • 山东建设和城乡建设厅注册中心网站首页wordpress安装教材
  • 个人风采网站制作毕节网站开发公司电话
  • 网络网站销售设计主题和设计理念
  • 做网站一般用什么服务器承德专业做网站
  • 松北区建设局网站网站建设分为几种
  • 网站建设的合同 体会智联招聘网站建设情况
  • 记的网站域名wordpress地方信息主题
  • 淄博好的建网站公司网站建设 海口
  • 有人做网站花了10几万2017做啥网站能致富
  • 做网站有什么软件cod建站平台
  • 合肥学校网站建设怎么做免费的产品图片网站
  • 营养早餐网站的设计与制作建设通网站怎么查项目经理在建
  • 浑南区建设局网站永州网站建设公司推荐
  • 做外贸都得有网站吗绵阳网站建设制作
  • 功能性的网站建设北京餐饮品牌设计公司
  • php做网站优势视频直播软件
  • 怎么安装php网站哪个网站是专门为建设方服务的
  • 重慶网站开发sina app engine wordpress
  • wampserver网站开发步骤中冠工程管理咨询有限公司
  • 自己做网站商城需要营业执照吗老外做牛排的视频网站
  • 网站推广效果的评估指标主要包括公司广告推广
  • 昆明网站建设那家好哪个网站学做凉皮
  • hype做网站动效哪里有给网站做
  • 打扑克网站推广软件设计类专业哪个最好