青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

在Qt中使用sleep

https://blog.csdn.net/tingsking18/article/details/5304254

關于sleep函數,我們先來看一下他的作用:sleep函數是使調用sleep函數的線程休眠,線程主動放棄時間片。當經過指定的時間間隔后,再啟動線程,繼續執行代碼。sleep函數并不能起到定時的作用,主要作用是延時。在一些多線程中可能會看到sleep(0);其主要目的是讓出時間片。sleep函數的精度非常低,當系統越繁忙的時候它精度也就越低,有時候我們休眠1秒,可能3秒后才能繼續執行。它的精度取決于線程自身優先級、其他線程的優先級,以及線程的數量等因素,所以說sleep函數是不能用來精確計時的。

Qt為我們提供了幾個可以用于線程Sleep的函數,分別是:

void QThread::sleep ( unsigned long secs )   [static protected]

void QThread::msleep ( unsigned long msecs )   [static protected]

void QThread::usleep ( unsigned long usecs )   [static protected]

sleep的單位分別是秒、毫秒、微秒。

但是現在問題出來了,請仔細看上面的函數定義,函數的訪問權限都是protected,這就意味著,我們必須在QThread或者他的繼承類中使用這三個函數。

但是我們可能需要在非繼承QThread的類中來使用sleep函數。那這該這么辦呢?下面我就給大家提供幾種解決方法。

1.    processEvents

    QTime dieTime = QTime::currentTime().addMSecs(svalue);

    while( QTime::currentTime() < dieTime )

    QCoreApplication::processEvents(QEventLoop::AllEvents, 100);

調用processEvents會讓Qt繼續處理線程所在的消息隊列中未處理的消息,直到消息隊列中沒有消息可以處理。當進行長時間的操作的時候可以調用此函數(比方說拷貝文件)。這個函數可能和我們要使用msleep的本意有差別,但是使用它可以在svalue時間內處理events,從而達到類似sleep的目的。

2.        QWaitCondition

       QWaitCondition wait;

       wait.wait(time);

wait的單位是milliseconds,但是waitsleep的作用是不同的。

sleep()方法是使線程停止一段時間的方法。在sleep 時間間隔期滿后,線程不一定立即恢復執行。這是因為在那個時刻,其它線程可能正在運行而且沒有被調度為放棄執行,除非

(a)“醒來”的線程具有更高的優先級。

(b)正在運行的線程因為其它原因而阻塞。

wait()會使調用它的線程暫停執行,被調對象進入等待狀態,直到被喚醒或等待時間到。

3.        查看sleep的源代碼,使用Qtwin下和*nix下的sleep函數。

Windows下的sleep的代碼為:

void QThread::sleep(unsigned long secs)

{

    ::Sleep(secs * 1000);

}

sleep的單位為秒。

*nixsleep的代碼為:

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);

}

 

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);

}

我們可以對這兩個函數進行簡單的封裝,從而達到真正的sleep的作用。

 

---------------------

作者:tingsking18

來源:CSDN

原文:https://blog.csdn.net/tingsking18/article/details/5304254?utm_source=copy

版權聲明:本文為博主原創文章,轉載請附上博文鏈接!

posted on 2018-10-09 17:33 zmj 閱讀(1995) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            免费不卡在线观看| 国产综合婷婷| 99视频精品免费观看| 欧美一区二区三区成人| 欧美制服丝袜| 在线视频亚洲欧美| 欧美日韩99| 亚洲第一久久影院| 久久免费精品视频| 亚洲欧洲偷拍精品| 老鸭窝亚洲一区二区三区| 亚洲黄色在线| 亚洲最新在线| 久久久久久久久一区二区| 亚洲高清av在线| 久久蜜臀精品av| 国产日韩欧美一区二区三区在线观看| 国产精品久久国产精麻豆99网站| 欧美视频一区在线| 国产欧美日韩不卡| 久久aⅴ乱码一区二区三区| 久久久人成影片一区二区三区观看| 老司机精品久久| 国产免费一区二区三区香蕉精| 91久久久久久久久久久久久| 在线观看亚洲视频| 欧美一级理论片| 日韩视频在线免费| 亚洲女人天堂成人av在线| 欧美日韩国产探花| 99精品视频一区| 欧美激情精品久久久久久免费印度 | 91久久亚洲| 亚洲国产mv| 国产精品久久久久久影视| 亚洲国产精品高清久久久| 亚洲在线观看免费| 一区二区三区导航| 久久精品一区二区三区不卡牛牛 | 在线精品高清中文字幕| 一本色道久久综合亚洲精品不| 国产一区二区三区网站 | 亚洲美女在线国产| 久久精品av麻豆的观看方式| 午夜精品久久久久久久99热浪潮| 欧美激情视频一区二区三区免费 | 一本大道久久a久久精二百| 欧美伊人久久久久久久久影院| 国产精品99免费看 | 一区二区三区精品视频在线观看| 欧美激情一区二区三级高清视频| 国产酒店精品激情| 欧美在线观看你懂的| 亚洲女同精品视频| 亚洲精品护士| 国产裸体写真av一区二区| 极品尤物久久久av免费看| 亚洲片在线观看| 亚洲一区二区三区在线| 亚洲国产小视频| 欧美日韩一区二区免费视频| 欧美激情第二页| 亚洲午夜久久久久久久久电影院| 久久国产手机看片| 国产精品福利av| 亚洲自拍偷拍麻豆| 欧美私人网站| 欧美不卡在线| 亚洲欧美三级伦理| 激情综合视频| 亚洲国产国产亚洲一二三| 欧美日韩美女| 久久久www成人免费无遮挡大片| 久久精品国产91精品亚洲| 国产日韩专区| 欧美黄网免费在线观看| 激情视频一区二区三区| 亚洲高清不卡在线| 欧美日韩国产成人在线免费| 午夜亚洲福利| 欧美日韩国产探花| 老色鬼久久亚洲一区二区| 欧美精品国产精品日韩精品| 久久国产夜色精品鲁鲁99| 久久久久久久一区二区三区| 日韩亚洲欧美一区二区三区| 久久综合狠狠综合久久综青草 | 91久久国产精品91久久性色| 亚洲综合日韩在线| 国产精品国产三级国产专播品爱网| 欧美影视一区| 欧美日韩八区| 暖暖成人免费视频| 亚洲一区视频在线| 久久久久国产成人精品亚洲午夜| 亚洲少妇在线| 亚洲色图自拍| 在线视频成人| 国产亚洲精品成人av久久ww| 欧美va亚洲va香蕉在线| 久久精品人人做人人综合| 亚洲欧美另类中文字幕| 日韩天天综合| 亚洲免费成人av| 国产日韩久久| 欧美日韩国产一区二区三区| 亚洲视频一区在线| 亚洲免费精彩视频| 亚洲成色777777女色窝| 欧美一区永久视频免费观看| 一区二区三区四区国产| 一本色道久久综合亚洲精品按摩| 一色屋精品视频在线观看网站| 国产精品成人v| 欧美高清视频一二三区| 欧美黄色aa电影| 国产精品久久久久影院色老大| 亚洲大胆女人| 久久亚洲美女| 亚洲综合欧美日韩| 欧美日韩一二区| 9色精品在线| 欧美激情aⅴ一区二区三区| 亚洲深夜福利在线| 欧美久久久久久| 国产欧美日韩一区二区三区在线观看| 亚洲高清在线精品| 欧美在线一二三| 午夜精品久久久久久久99黑人| 欧美精品v日韩精品v韩国精品v | 亚洲免费精彩视频| 欧美69wwwcom| 国产亚洲成av人在线观看导航| 一区二区三区高清在线观看| 99热免费精品在线观看| 欧美精品久久久久久久久老牛影院 | 在线精品视频一区二区| 亚洲在线播放电影| 亚洲午夜精品久久久久久浪潮| 亚洲成人在线免费| 在线观看不卡| 久久最新视频| 久久成人精品视频| 在线观看一区欧美| 亚洲第一页在线| 欧美精品一区二区在线播放| 在线一区亚洲| 欧美在线播放高清精品| 在线视频成人| 一本久道综合久久精品| 国产精品成人一区二区| 亚洲欧美在线一区| 欧美怡红院视频| 亚洲美女视频在线观看| 亚洲欧美一区二区三区极速播放| 在线精品一区二区| 亚洲免费大片| 国产亚洲欧美日韩在线一区| 亚洲人成艺术| 亚洲欧洲一区二区三区| 欧美亚洲专区| 亚洲免费视频网站| 欧美日本中文字幕| 老**午夜毛片一区二区三区| 国产色爱av资源综合区| 日韩一级大片在线| 一区二区电影免费在线观看| 久久久www| 久久久亚洲高清| 国产欧美日韩伦理| 在线综合+亚洲+欧美中文字幕| 国产精品影视天天线| 欧美一区午夜精品| 国产精品久久福利| avtt综合网| 亚洲视频免费在线| 久久成人精品一区二区三区| 国产亚洲永久域名| 久久手机免费观看| 欧美激情成人在线| 亚洲无人区一区| 国产精品欧美一区喷水| 亚洲综合色视频| 久久久www成人免费毛片麻豆| 国产一区亚洲| 欧美日韩国产首页在线观看| 99热精品在线| 久久午夜av| 夜夜嗨av一区二区三区四季av| 国产精品久久久999| 久久久久久电影| 亚洲精品一区二区三区福利| 亚洲伊人一本大道中文字幕| 国产精品一页| 欧美日韩成人精品| 久久青草久久| 一区二区三区四区精品| 可以免费看不卡的av网站| 亚洲黄色影片| 欧美三级网址|