繁体   English   中英

非常困倦地分析Qt应用程序,如何分析结果?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM