楼主写的没问题,你这如果nTimer % nSQ一直不等于0的就相当于while(true){},有些环境可能会认为死循环,程序会崩溃的,
再说msleep的功能是放弃线程CPU时间片,也就是说你写msleep地方是意味着这个线程已经罢工了,
所以怎么可能会提高CPU呢,
我估计是写法有问题,楼主改成这样试试
this->thread()->msleep(1000);
或者
this->thread()->sleep(1);
this->thread()意识就是获取当前线程,反正我没这么用过QThread::msleep