1. <bdo id="8zfej"></bdo>
    <li id="8zfej"><meter id="8zfej"><th id="8zfej"></th></meter></li>

    南京中博教育

    全國咨詢電話:17368476151

    三分鐘了解中博教育
    當(dāng)前位置:南京中博教育 > 學(xué)習(xí)園地 > 編程技巧

    Android程序內(nèi)存管理必讀

    來源:www.zft4.com? ? ? 作者:張曼 ? ??

    Android作為以Java語言為主的智能平臺對于我們開發(fā)一些高性能和質(zhì)量的軟件來說了解Android程序內(nèi)存管理機(jī)制是必須的。

      Android作為以Java語言為主的智能平臺對于我們開發(fā)一些高性能和質(zhì)量的軟件來說了解Android程序內(nèi)存管理機(jī)制是必須的。

      南京北大青鳥張府園校區(qū)的編程老師說:我們要知道什么時候用gc什么時候用recycle以及到底用不用finalization,因為Java對內(nèi)存的分配只需要new開發(fā)者不需要顯示的釋放內(nèi)存,但是這樣造成的內(nèi)存泄露問題的幾率反而更高。

      1.對于常規(guī)開發(fā)者而言需要了解 Java的四種引用方式,比如強(qiáng)引用,軟引用,弱引用以及虛引用。一些復(fù)雜些的程序在長期運行很可能出現(xiàn)類似OutOfMemoryError的異常。

      2.并不要過多的指望gc,不用的對象可以顯示的設(shè)置為空,比如obj=null,這里Android123提示大家,java的gc使用的是一個有向圖,判斷一個對象是否有效看的是其他的對象能到達(dá)這個對象的頂點,有向圖的相對于鏈表、二叉樹來說開銷是可想而知。

      3.Android為每個程序分配的對內(nèi)存可以通過Runtime類的totalMemory() freeMemory() 兩個方法獲取VM的一些內(nèi)存信息,對于系統(tǒng)heap內(nèi)存獲取,可以通過Dalvik.VMRuntime類的getMinimumHeapSize() 方法獲取小可用堆內(nèi)存,同時顯示釋放軟引用可以調(diào)用該類的gcSoftReferences() 方法,獲取更多的運行內(nèi)存。

      4.對于多線程的處理,如果并發(fā)的線程很多,同時有頻繁的創(chuàng)建和釋放,可以通過concurrent類的線程池解決線程創(chuàng)建的效率瓶頸。

      5. 不要在循環(huán)中創(chuàng)建過多的本地變量。

      有關(guān)Android和Java的系統(tǒng)性能分析,Android123將在以后的文章中詳細(xì)講述如何調(diào)試Java分析內(nèi)存泄露以及Android上的gdb調(diào)試器分析得出內(nèi)存性能改進(jìn)。


    分享到:
    近期文章

    搶試聽名額

    名額僅剩66名

    教育改變生活

    WE CHANGE LIVES

    主站蜘蛛池模板: 亚洲综合av一区二区三区不卡| 久久综合久久综合亚洲| 国产成人综合亚洲绿色| 亚洲色欲久久久久综合网| 久久乐国产精品亚洲综合 | 伊人久久成人成综合网222| 久久婷婷五月综合成人D啪| 亚洲精品综合一二三区在线| 国产色丁香久久综合| 伊人一伊人色综合网| 亚洲国产成+人+综合| 国产成人精品综合在线观看| 91精品国产综合久久久久| 亚洲国产综合久久天堂| 国产成人综合一区精品| 色综合久久久久无码专区| 伊人久久亚洲综合| 一本久道久久综合| 久久天堂av综合色无码专区| 五月丁香综合缴情六月小说| 久久影视综合亚洲| 亚洲乱码中文字幕综合234| 91丁香亚洲综合社区| 亚洲国产天堂久久综合网站| 国产精品综合专区中文字幕免费播放| 好了av第四综合无码久久| 亚洲人成综合在线播放| 亚洲五月丁香综合视频| 浪潮AV色综合久久天堂| 色综合久久综合中文综合网| 久久91精品久久91综合| 色噜噜狠狠成人中文综合| 久久久久高潮综合影院| 中文字幕亚洲综合久久| 色综合天天做天天爱| 亚洲欧美综合精品成人导航| 日日狠狠久久偷偷色综合0| 国产香蕉尹人综合在线观看| 国产成人精品综合在线观看| 国产激情电影综合在线看| 婷婷综合另类小说色区|