可以看到,此階段監(jiān)控服務(wù)的狀態(tài)是暫停的:
收集運(yùn)行時數(shù)據(jù)
當(dāng)主程序完全運(yùn)行起來后,選擇我們的 MyShop 視圖并將其調(diào)用起來。在我們做下一步操作前,點(diǎn)擊 “開始”按鈕 ( 參見圖 8) 以開啟監(jiān)視器的數(shù)據(jù)收集。
可以看到,此時 Profilling Monitor 視圖中的運(yùn)行狀態(tài)已由暫停改為運(yùn)行 :
接著,進(jìn)行我們的操作。選擇 “browse” 按鈕并選擇存放我們產(chǎn)品信息文件的目錄。產(chǎn)品信息文件可在本文附件中找到。點(diǎn)擊 OK 后,可以看到,如圖 2 所示,產(chǎn)品信息已經(jīng)從文件中獲取出來了。
操作完成后,我們也獲得了我們需要的數(shù)據(jù),可以將需要分析的程序關(guān)閉,回到前面的 Profilling Monitor 視圖中進(jìn)行具體的數(shù)據(jù)分析工作。
關(guān)于離線數(shù)據(jù)分析
實(shí)際上,在被分析程序運(yùn)行的時候,這些數(shù)據(jù)的分析工作可以開始進(jìn)行了。但是進(jìn)行在線分析會導(dǎo)致被測試程序運(yùn)行緩慢而且影響分析效果。所以如果可能,好是把數(shù)據(jù)收集下來后關(guān)閉被測試程序進(jìn)行離線數(shù)據(jù)分析。
分析程序調(diào)用關(guān)系
使用 TPTP 對運(yùn)行時數(shù)據(jù)進(jìn)行分析,其中一個非常有用的功能是根據(jù)運(yùn)行時數(shù)據(jù)分析對象之間的調(diào)用關(guān)系。TPTP 提供 UML 序列圖的查看方式。這種方式的分析對剛接手一個不熟悉的程序開發(fā)時尤其有用。
回到我們的例子中,當(dāng)分析程序運(yùn)行后,會在 Profilling Monitor 視圖中生成相應(yīng)的報告。如圖所示,選擇以 UML2 Class Interactions 的方式打開分析報告。
在 UML 序列圖的分析中,不僅可以看到類之間的調(diào)用關(guān)系,其調(diào)用過程中的性能瓶頸也會被標(biāo)記出來。