Java內(nèi)存釋放實(shí)現(xiàn)代碼案例
先貼代碼:
StringBuilder dada = null;
for(int i=0; i<1000; i++){
dada = new StringBuilder();
for(int j=0; j<1000; j++){
dada.append("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF");
}
}
System.out.println("釋放前");
StringBuilder dada1 = new StringBuilder() ;
dada1.append("1");
dada = dada1;
System.out.println("釋放后");
放在內(nèi)層,可見每次使用內(nèi)存是74,000K多的內(nèi)存,而,如果放到循環(huán)的外面,
StringBuilder dada = dada = new StringBuilder();;
for(int i=0; i<1000; i++){
for(int j=0; j<1000; j++){
dada.append("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF");
}
}
就只會(huì)將數(shù)據(jù)一致累加的去處理,這樣數(shù)據(jù)就大量的堆積起來了,
查看內(nèi)存可看出是下面一種寫法的內(nèi)存是220,000K多的內(nèi)存.
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java實(shí)現(xiàn)批量導(dǎo)入.csv文件到mysql數(shù)據(jù)庫
這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)批量導(dǎo)入.csv文件到mysql數(shù)據(jù)庫,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-08-08
SpringSecurity退出功能實(shí)現(xiàn)的正確方式(推薦)
本文將介紹在Spring Security框架下如何實(shí)現(xiàn)用戶的"退出"logout的功能。本文通過實(shí)例代碼講解的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2019-11-11
Java8實(shí)戰(zhàn)之Stream的延遲計(jì)算
JDK中Stream的中間函數(shù)如 filter(Predicate super T>)是惰性求值的,filter并非對流中所有元素調(diào)用傳遞給它的Predicate,下面這篇文章主要給大家介紹了關(guān)于Java8實(shí)戰(zhàn)之Stream延遲計(jì)算的相關(guān)資料,需要的朋友可以參考下2021-09-09
Spring?boot?admin?服務(wù)監(jiān)控利器詳解
這篇文章主要介紹了Spring?boot?admin?服務(wù)監(jiān)控利器詳解,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-08-08
深入學(xué)習(xí)Spring Boot排查 @Transactional 引起的 NullPointerException問題
這篇文章主要介紹了深入學(xué)習(xí)Spring Boot排查 @Transactional 引起的 NullPointerException問題,需要的朋友可以參考下2018-01-01

