2013-04-07 66 views

回答

1

你需要创建两个信号 - 一个用于启动和一个用于完成这项工作。槽,连接到所述开始信号,将存储的开始时间是这样的:

mStartTime = QDateTime::currentDateTime(); 

和槽,连接到所述结束信号,将计这样的区别:

qint64 msecs = mStartTime.msecsTo(QDateTime::currentDateTime()); 
+0

耶,目前我用过这样的东西。但问题是,线程可能会暂停(特别是在单个内核上)。所以时间比“真正的工作时间”更大 – 2013-04-07 17:15:17

+0

事实上,我可以在这里看到问题。我担心,这是任务,在应用程序级别上无法解决。只有操作系统本身可以计算CPU时间的数量,分配给一个线程。所以我真的不认为,Qt可以计算这个确切的时间。你应该看看你正在使用的操作系统的API。 – Amartel 2013-04-07 17:37:55