Qt阻塞延時和非阻塞延時

非阻塞延時:

void MyTool::delaymsec(int msec)
{
    QTime dieTime = QTime::currentTime().addMSecs(msec);
    while (QTime::currentTime() < dieTime)
        QCoreApplication::processEvents(QEventLoop::AllEvents, 100);
}

阻塞延時:

void MyTool::delaymsec(int msec)
{
    QTime ntime = QTime::currentTime();
    QTime ctime;

    do {
      ctime = QTime::currentTime();
    } while (ntime.msecsTo(ctime) <= msec);
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章