
AOP技術(shù)應(yīng)用
面向方面編程(AOP)是面向?qū)ο缶幊?OOP)的一種擴展技術(shù),能夠很好的解決橫切關(guān)注點問題以及相關(guān)的設(shè)計難題來實現(xiàn)松散耦合。
1)不是對OOP的否定而是擴展.
2)AOP其實不是新的概念
3)動態(tài)代理技術(shù)它是AOP的基礎(chǔ),InvocationHandler
CLR Profiler
CLR Profiler 是Microsoft提供的一種內(nèi)存分析工具,并且可以從 MSDN下載。它使您能夠查看應(yīng)用程序進程的托管堆以及調(diào)查垃圾回收器的行為。使用該工具,您可以獲取有關(guān)應(yīng)用程序的執(zhí)行、內(nèi)存分配和內(nèi)存消耗的有用信息。這些信 息可以幫助您了解應(yīng)用程序的內(nèi)存使用方式以及如何優(yōu)化應(yīng)用程序的內(nèi)存使用情況。
CLR Profiler 在日志文件中記錄內(nèi)存消耗和垃圾回收器行為信息。然后,您可以使用一些不同的圖形視圖,通過 CLR Profiler 來分析該數(shù)據(jù)。一些比較重要的視圖是:
1)llocation Graph。顯示有關(guān)對象分配方式的調(diào)用堆棧。您可以使用該視圖來查看方法進行的每個分配的系統(tǒng)開銷,隔離您不希望發(fā)生的分配,以及查看方法可能進行的過度分配。
2)sembly, Module, Function, and Class Graph。顯示哪些方法造成了哪些程序集、函數(shù)、模塊或類的加載。
3)ll Graph。使您可以查看哪些方法調(diào)用了其他哪些方法以及相應(yīng)的調(diào)用頻率。您可以使用該圖表來確定庫調(diào)用的系統(tǒng)開銷,以及調(diào)用了哪些方法或?qū)μ囟ǚ椒ㄟM行了多少個調(diào)用。
4)me Line。提供了有關(guān)應(yīng)用程序執(zhí)行的基于文本的、按時間順序的層次結(jié)構(gòu)視圖。使用該視圖可以查看分配了哪些類型以及這些類型的大小。您還可以使用該視圖查看方法調(diào)用使得哪些程序集被加載,并且分析您不希望發(fā)生的分配。您可以分析完成器的使用情況,并且識別尚未實現(xiàn)或調(diào)用 Close 或 Dispose 從而導(dǎo)致瓶頸的方法。您可以使用 CLR Profiler.exe 來識別和隔離與垃圾回收有關(guān)的問題。這包括內(nèi)存消耗問題(例如,過度或未知的分配、內(nèi)存泄漏、生存期很長的對象)以及在執(zhí)行垃圾回收時花費的時間的百分比。