java內存泄漏易發場景

內存泄露是指無用對象(不再使用的對象)持續佔有內存
無用對象的內存得不到及時釋放
容易發生內存泄漏的場景
1. 靜態集合類引起內存泄露,像HashMap這些靜態變量的生命週期和應用程序一致,他們所引用的所有的對象Object也不能被釋放,因爲他們也將一直被Vector等引用着。
2. 當集合裏面的對象屬性被修改後,再調用remove()方法時不起作用。當remove不掉set中的對象時,set會長時間持有無用的對象,導致內存泄漏。
單例模式
3. 不正確使用單例模式是引起內存泄露的一個常見問題,單例對象在被初始化後將在JVM的整個生命週期中存在(以靜態變量的方式),如果單例對象持有外部對象的引用,那麼這個外部對象將不能被jvm正常回收。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章