java 什么时候进行垃圾回收_java什么时候进行垃圾回收,垃圾回收的执行流程
生活随笔
收集整理的這篇文章主要介紹了
java 什么时候进行垃圾回收_java什么时候进行垃圾回收,垃圾回收的执行流程
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
java的垃圾回收分為
三個區域新生代 老年代 永久代
一個對象實例化時 先去看伊甸園有沒有足夠的空間
如果有 不進行垃圾回收 ,對象直接在伊甸園存儲.
如果伊甸園內存已滿,會進行一次minor gc
然后再進行判斷伊甸園中的內存是否足夠
如果不足 則去看存活區的內存是否足夠.
如果內存足夠,把伊甸園部分活躍對象保存在存活區,然后把對象保存在伊甸園.
如果內存不足,向老年代發送請求,查詢老年代的內存是否足夠
如果老年代內存足夠,將部分存活區的活躍對象存入老年代.然后把伊甸園的活躍對象放入存活區,對象依舊保存在伊甸園.
如果老年代內存不足,會進行一次full gc,之后老年代會再進行判斷 內存是否足夠,如果足夠 同上.
如果不足 會拋出OutOfMemoryError.
GC雖然可以進行內存空間的釋放,但同時頻繁的GC一定會影響性能,GC發生的頻率越低,你的系統就越高效.
支持原創::https://blog.csdn.net/jidong2622/article/details/78147364
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!
總結
以上是生活随笔為你收集整理的java 什么时候进行垃圾回收_java什么时候进行垃圾回收,垃圾回收的执行流程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 常用
- 下一篇: Go语言实战的知识图谱