簡體   English   中英

如何在Qt4睡覺

[英]how to sleep in Qt4

我只是覺得不容易使Qt4的 睡眠通話。 我在Qt5中編寫了一些代碼,在main()和其他地方幾乎沒有QThread::msleep()調用。 我想將這些代碼轉換為Qt4,但無法找到轉換這些msleep調用的簡單方法。

error: C2248: 'QThread::msleep' : cannot access protected member declared in class 'QThread'

有人提出了QThread類的子類。 為什么我需要走那么遠? 沒有簡單的方法只是睡一會兒?

您可以使用等待條件:

QWaitCondition wc;
QMutex mutex;
QMutexLocker locker(&mutex);
wc.wait(&mutex, milliseconds);

如果你堅持睡眠,你可以繼承QThread來公開這個方法:

class SleepThread : public QThread {
public: 
   static inline void msleep(unsigned long msecs) { 
       QThread::msleep(msecs);
   }
};

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM