我正在写一个Qt应用程序,并且我有一个四小时循环(在一个单独的线程中)。在这四个小时的循环中,我必须:QTime或QTimer等待超时
- 做的东西与串口;
- 等待一段固定的时间;
- 用串口做更多的东西;
- 等待一段任意的时间。
- 当500ms过去时,做更多的东西;
- 转到1.并重复四个小时。
目前,我这样做的方法非常糟糕,并导致一些计算机崩溃。我有一大堆代码,但下面的代码片段基本显示了这个问题。 CPU达到〜100%,最终可能会导致计算机崩溃。
void CRelayduinoUserControl::wait(int timeMS)
{
int curTime = loopTimer->elapsed();
while(loopTimer->elapsed() < curTime + timeMS);
}
我需要等待一段特定的时间才能继续使用该程序。是否有一些功能会等待一段时间,同时保持所有定时器的运行?
http://stackoverflow.com/questions/11996706/qt-c-wait-till-specific-time-to-execute-function/14144614#14144614 – formiaczek 2013-01-03 18:13:02