[英]Profiling Qt app with very Sleepy , how to analyze the results?
我试图找出为什么我的Qt应用程序在某点上会延迟一秒钟,这种sec延迟发生在每次添加到列表操作时,以及我使用免费的探查器“ Very Sleepy”的方式,并给出了一些快照,我很难分析。 这是最上面的快照:首先,它表明此winapi方法需要很长时间:
Name,Exclusive,Inclusive
GetModuleFileNameA,983.451654,983.451654,87.500001,87.500001,kernel32,[unknown],0
并且没有堆栈打印。 长时间运行的第二种方法是:
GetLastInputInfo,128.507105,128.507105,11.433579,11.433579,USER32,[unknown],0
在此堆栈跟踪中,我看到大量调用来自QtCore4的QSettings :: allKeys,而我没有调用QSettings :: allKeys
然后我有:
QPixmap::alphaChannel,1.159998,140.493087,0.103208,12.499999,QtGuid4,[unknown],0
在这里,我确实从bytarray信息中创建了图像,我使用以下方法从网上下载了50X50的小图像:
QImage thumbnail = QImage::fromData(bytarray );
我该如何保存在这里,也许可以阻止此应用的延迟?
完全没有主题,但我建议您使用Intel vtune一个更用户友好的分析器。 您可以直观地看到随时间变化的CPU利用率(按线程)以及在特定函数\\代码行中花费的时间。
但实际上令我惊讶的是,能够比较两种不同的结果,这对于验证变更如何影响性能非常有用。 试试看,我保证您会失望的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.