2012-01-06 74 views
0

我試圖找到爲什麼我的Qt應用程序獲得延遲在某些點爲秒,這一秒延遲發生每個添加到列表操作,並且我使用免費探查器「非常困」 它給了一些快照,我有困難時間分析。 這裏是頂級的快照: 首先它接縫,這WINAPI方法需要很長:分析Qt應用程序非常困,如何分析結果?

Name,Exclusive,Inclusive 
    GetModuleFileNameA,983.451654,983.451654,87.500001,87.500001,kernel32,[unknown],0 

並沒有棧打印。 第二個方法TAKS長:

GetLastInputInfo,128.507105,128.507105,11.433579,11.433579,USER32,[unknown],0 

在這個堆棧跟蹤我看到重調用到QSettings ::從QtCore4 未來allKeys我不叫QSettings :: allKeys

,然後我有:

QPixmap::alphaChannel,1.159998,140.493087,0.103208,12.499999,QtGuid4,[unknown],0 

和我在這裏創建bytarray信息我從網上下載圖片,小50X50圖片 使用:

QImage thumbnail = QImage::fromData(bytarray); 

我該如何保存在這裏,也許停止這個應用程序的延遲?

回答

1

完全出於主題,但我建議使用intel vtune更方便用戶的分析器。您可以看到隨時間推移(按線程)的CPU利用率以及在特定功能\代碼行花費的時間。

但是真正令我驚訝的是能夠比較2個不同的結果,真正有用來驗證變化如何影響性能。試試看,我保證你會感到失望。

+0

看起來不錯,但它不是免費的 – user63898 2012-01-06 12:34:04

+1

你必須用電子郵件註冊,但免費版本確實存在。 [這裏是鏈接](http://downloadcenter.intel.com/Detail_Desc.aspx?agr=Y&DwnldID=13574&lang=eng)在Linux上的免費版本。 – UmNyobe 2012-01-06 13:19:41

+0

謝謝,但即時通訊使用Windows XP 32位,我看到有30天的版本 – user63898 2012-01-07 06:16:34