今天就跟大家聊聊有關(guān)如何解決.NET應(yīng)用程序效率問題,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
創(chuàng)新互聯(lián)建站是專業(yè)的三沙網(wǎng)站建設(shè)公司,三沙接單;提供成都網(wǎng)站建設(shè)、網(wǎng)站制作,網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行三沙網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
.NET應(yīng)用程序一直以開發(fā)速度快、IDE功能強(qiáng)大作為賣點(diǎn),理所當(dāng)然我這種智商不高又期望快速開發(fā)的人當(dāng)然首選它了。第一次嘗試用.NET做整個(gè)機(jī)床的控制程序,平臺(tái)不是太強(qiáng)大,賽揚(yáng)2.4的CPU和512的內(nèi)存,基本上夠跑。經(jīng)歷兩個(gè)多月的開發(fā)把底層的功能基本完善了,控制臺(tái)程序看不出效率的問題,我很放心的使用WINDOWS FORMS完成剩下的界面。
當(dāng)做到一定程度的時(shí)候,效率問題就逐步顯現(xiàn)出來了,GUI界面很緩慢,令人很抓狂。在嘗試了很多的方法和優(yōu)化后,最終還是要到及床上進(jìn)行實(shí)際的調(diào)試。昨天忙了一天,終于找到了問題所在。過程我就不詳細(xì)多說了,解決問題最根本的還是找準(zhǔn)了病根。
有時(shí)候我們可能想WINDOWS FORMS的GUI性能不太好,界面刷新老是很緩慢,比起MFC的程序有時(shí)候慢很多。當(dāng)然這里有一些GUI庫的問題,我們只能從另外的一面去優(yōu)化。但其實(shí)微軟已經(jīng)做的夠好,而很大程度上取決于我們?cè)趺词褂盟?/p>
找病根,有兩種方法:一種是庸醫(yī)所用的亂證亂下藥,偶爾有效;一種是西醫(yī)的科學(xué)化的方法,用數(shù)據(jù)說話。在當(dāng)了一陣庸醫(yī)以后,終于想嘗試用工具來解決問題。
Resharper很可能很多人都用過吧,JetBrains公司還有一款產(chǎn)品用于性能分析的——dotTRACE。此工具比VS自帶的性能測試工具好用多了。我用這個(gè)工具詳細(xì)一測,立刻就找到了病根所在。當(dāng)然選擇正確的測試模式還是很有必要的,由于我開得多線程,所以需要用針對(duì)線程的測試模式,才能測得線程中函數(shù)調(diào)用的時(shí)間。
真是一針見血,找到了問題所在,立刻解決問題。
最后總結(jié)一下:
不要盲目找問題,要找到工具來,用數(shù)據(jù)說話。
.NET GUI庫有一些小的方面有性能問題(比如DataGridView等控件,但其實(shí)用好了速度還是很快的),但不足以影響到正常的工作,很多時(shí)候都是自己用法沒對(duì)造成的。
看完上述內(nèi)容,你們對(duì)如何解決.NET應(yīng)用程序效率問題有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。