QT编程之定时器或者程序中进行延时,不阻塞主线程解决办法

1、阻塞主线程

最简单的延时方法就是使用QThread类的sleep(n)、msleep(n)、usleep(n)

QThread::msleep(50);//阻塞延时50ms

2、不阻塞主线程

void Delay_MSec(unsigned int msec) //毫秒
{
    QTime _Timer = QTime::currentTime().addMSecs(msec);
    while( QTime::currentTime() < _Timer )
        QCoreApplication::processEvents(QEventLoop::AllEvents, 100);
}

版权声明:本文为xunxue1523原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。