成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

注意Java代碼的內存泄漏

開發 后端
對于有語言編譯基礎的同志,要注意了,如果你是剛學java的.那么下面你必須要看.當然本人也是一樣,也會出現下面某些錯誤。所以本人總結了一些。

對于有語言編譯基礎的同志,要注意了,如果你是剛學java的.那么下面你必須要看.當然本人也是一樣,也會出現下面某些錯誤。所以本人總結了一些。

當然都是個人看法.不代表就是對的.也許有些是錯的.同時也希望熟悉JAVA的高高手指出.或者有更好的看法或建議.都可以和我溝通.大家一齊來學習。

同時這也是對自己的一種提高。

在項目應用中.往往都是面臨復雜的業務.而且用戶量增加.內存使用自然就會增大.還有HTTP的服務器只有一定的能力.所以代碼編寫也是一件非常重要的.性能和穩定.這個是極為重要。

總結如下:

1、盡早釋放無用對象的引用。特別是大對象和集合對象,通過置為NULL,暗示垃圾收集器來收集該對象,防止發生內存泄露。

2、程序中如果出現大量使用字符串處理,避免使用 String ,應使用 StringBuffer。

  1. for(Int i=0;i<100;i++)  
  2.    {  
  3.  String s1="";  
  4.  s1=s1+"abc";//不要這樣寫  
  5.    } 

3、盡量少用靜態變量,因為靜態變量是全局的, GC 不會回收的;

4、避免集中創建對象尤其是大對象, JVM 會突然需要大量內存,這時必然會觸發 GC 優化系統內存環境;顯示的聲明數組空間,而且申請數量還極大。

5、盡量運用對象池技術以提高系統性能;生命周期長的對象擁有生命周期短的對象時容易引發內存泄漏,例如大集合對象擁有大數據量的業務對象的時候,可以考慮分塊進行處理,然后解決一塊釋放一塊的策略。

5、不要在經常調用的方法中創建對象,尤其是忌諱在循環中創建對象。可以適當的使用 hashtable , vector 創建一組對象容器,然后從容器中去取那些對象,而不用每次 new 之后又丟棄。

6、一般都是發生在開啟大型文件或跟數據庫一次拿了太多的數據,造成 Out Of Memory Error 的狀況,這時就大概要計算一下數據量的最大值是多少,并且設定所需最小及最大的內存空間值。

7、注意集合數據類型,包括數組、樹、圖、鏈表等數據結構,這些數據結構對GC來說,回收更為復雜。

8、盡量避免在類的默認構造器中創建、初始化大量的對象,防止在調用其自類的構造器時造成不必要的內存資源浪費。

9、盡量避免強制系統做垃圾內存的回收,增長系統做垃圾回收的最終時間。

10、代碼中是否有死循環或遞歸調用

11、是否有大循環重復產生新對象實體。

12、檢查List、MAP等集合對象是否有使用完后,未清除的問題。List、MAP等集合對象會始終存有對對象的引用,使得這些對象不能被GC回收。

下面給出了一個簡單的內存泄露的例子。在這個例子中,我們循環申請Object對象,并將所申請的對象放入一個Vector中,如果我們僅僅釋放引用本身,那么Vector仍然引用該對象,所以這個對象對GC來說是不可回收的。

  1. Vector v=new Vector(10);  
  2. for (int i=1;i<100; i++)  
  3. {  
  4.  Object o=new Object();  
  5.  v.add(o);  
  6.  o=null;   

函數內,如果可以清除的,清除集合中對象

  1. Map<Object,Object> v=new Map<Object,Object>();  
  2. for (int i=1;i<100; i++)  
  3. {  
  4.  Object o=new Object();  
  5.  v.put(i,o);   
  6. }  
  7. v.clear(); 

原文鏈接:http://blog.csdn.net/yahuadai/article/details/7675318

責任編輯:林師授 來源: yahuadai的博客
相關推薦

2019-01-30 18:24:14

Java內存泄漏編程語言

2024-03-11 08:22:40

Java內存泄漏

2009-06-16 11:17:49

內存泄漏

2009-06-16 11:20:22

內存泄漏

2024-01-30 10:12:00

Java內存泄漏

2015-03-30 11:18:50

內存管理Android

2010-09-25 11:07:45

Java內存泄漏

2023-12-18 10:45:23

內存泄漏計算機服務器

2024-02-21 08:00:55

WindowsDWM進程

2012-08-13 10:14:36

IBMdW

2012-02-22 21:28:58

內存泄漏

2009-06-10 22:03:40

JavaScript內IE內存泄漏

2022-04-07 07:41:18

String字符串內存泄漏

2021-03-07 17:17:07

Java內存閉包

2022-05-26 09:51:50

JavaScrip內存泄漏

2011-06-16 09:28:02

C++內存泄漏

2013-08-07 10:16:43

Android內存泄漏

2016-07-05 14:09:02

AndroidJAVA內存

2021-08-09 09:54:37

內存泄漏JS 阿里云

2021-08-05 15:28:22

JS內存泄漏
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 亚洲福利在线观看 | 久久一二区 | 毛片免费观看 | 欧美一级毛片久久99精品蜜桃 | 天天影视网天天综合色在线播放 | 精品精品 | 91久久久久久久久 | 一区二区视频 | 综合精品 | 欧美黄 片免费观看 | 成年人免费看的视频 | 欧美在线日韩 | 91福利在线观看视频 | 99久久精品免费看国产四区 | 国产高清一区二区三区 | 亚洲成av人影片在线观看 | 亚洲瑟瑟 | 亚洲免费在线视频 | 久久久久久久久久久久久久国产 | 午夜免费成人 | 亚洲一av | 二区在线视频 | 欧美日韩久久精品 | 一区二区视频 | 仙人掌旅馆在线观看 | 99国产视频| 黄视频国产 | 91国语清晰打电话对白 | 狠狠干美女 | 欧美视频免费在线 | 欧美精品成人 | 日韩精品免费在线观看 | 亚洲欧美日韩成人在线 | 成人在线视频观看 | 免费久| 日韩日韩日韩日韩日韩日韩日韩 | 欧美黑人一级爽快片淫片高清 | 一级黄色在线 | 欧美一级在线观看 | 亚洲国产一区二区在线 | 国产精品视频在线观看 |