该错误很莫名奇妙,暂时也不知道为什么会出错。
是这样的,我自定义了一个QThread,在run函数中会循环打开一个资源,这个资源会出现打不开的情况,所以如果打开失败,就需要等待一段时间再次去打开。因为中间有可能手动终端等待,手动触发再次尝试打开资源,所以没有直接使用msleep,搞的比较复杂。
我定义了一个QTimer,定义了一个QWaitCondition。QTimer设置为setSingleShot(true),然后在其槽函数中唤醒QWaitCondition。在run函数中打开资源失败就设置QTimer.start。然后进入QWaitCondition.wait。等待定时器的槽函数将其唤醒。
这里问题是,原来再次尝试打开资源间隔时间比较长60s。后来改成1s后就会出现QTimer.start或QWaitCondition.wait处就会出现错误。导致QTimer被耗尽。
标签:QWaitCondition,函数,错误,莫名,资源,打开,QTimer From: https://www.cnblogs.com/uuvv/p/18308440