【JVM】JVM中的分代回收

文章目錄

    • 分代收集算法
        • 什么是分代
        • 分代收集算法-工作機制
        • MinorGC、 Mixed GC 、 FullGC的區別是什么

分代收集算法

什么是分代

在java8時,堆被分為了兩份: 新生代和老年代【1:2】

其中:
對于新生代,內部又被分為了三個區域。
伊甸園區Eden,新生的對象都分配到這里
幸存者區survivor(分成from和to)

Eden區,from區,to區【8:1:1】
在這里插入圖片描述

分代收集算法-工作機制

創建的對象,都會先分配到eden區
當伊甸園內存不足,標記伊甸園from(現階段沒有)的存活對象
將存活對象采用復制算法復制到 to 中,復制完畢后,伊甸園和 from 內存都得到釋放
在這里插入圖片描述
經過一段時間后伊甸園的內存又出現不足,標記eden區域to區存活的對象,將存活的對象復制到from區

在這里插入圖片描述
當幸存區對象熬過幾次回收(最多15次),晉升到老年代幸存區內存不足大對象會導致提前晉升
在這里插入圖片描述

MinorGC、 Mixed GC 、 FullGC的區別是什么

Minor GC(新生代GC)、Mixed GC(混合GC)和Full GC(完全GC)是垃圾回收過程中的三個不同階段。它們在觸發條件執行范圍影響范圍上存在一些區別。
在這里插入圖片描述
Minor GC主要針對新生代進行垃圾回收,
Mixed GC是對新生代和部分老年代的垃圾回收,
Full GC則是對整個堆內存進行垃圾回收。
隨著垃圾回收的范圍擴大停頓時間對應用程序影響也會增加。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/40413.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/40413.shtml
英文地址,請注明出處:http://en.pswp.cn/news/40413.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

eclipse常用設置

1、調整編輯頁面字體大小 窗口 (Window)- 首選項(Preferences)- 常規(General)- 外觀 (Appearence)- 顏色與字體 (Colors And Fonts),在右邊的對話框里選擇 Java - Java Editor Text Font,點擊出現的修改&…

【ARM 嵌入式 編譯系列 3.3 -- gcc 動態庫與靜態庫的鏈接方法介紹】

文章目錄 1.1 GCC 鏈接器 LD 介紹1.1.1 GCC 鏈接器 LD 常用參數介紹1.2 動態庫和靜態庫介紹1.2.1 動態庫和靜態庫優缺點1.2.2 庫文件鏈接方式1.2.3 ldd 工具介紹1.2.4 靜態庫鏈接時搜索路徑順序1.2.5 動態庫鏈接時、執行時搜索路徑順序1.2.6 頭文件搜索路徑1.2.7 有關環境變量上…

Neo4j之Aggregation基礎

在 Neo4j 中,聚合(Aggregation)是對數據進行計算、匯總和統計的過程。以下是一些使用聚合函數的常見例子,以及它們的解釋: 計算節點數量: MATCH (p:Person) RETURN count(p) AS totalPersons;這個查詢會計…

Socks5代理在多線程爬蟲中的應用

在進行爬蟲開發過程中,我們常常需要處理大量的數據,并執行多任務并發操作。然而,頻繁的請求可能會引起目標網站的反爬機制,導致IP封禁或限制訪問。為了規避這些限制,我們可以借助Socks5代理的強大功能,通過…

Nginx反向代理技巧

跨域 作為一個前端開發者來說不可避免的問題就是跨域,那什么是跨域呢? 跨域:指的是瀏覽器不能執行其他網站的腳本。它是由瀏覽器的同源策略造成的,是瀏覽器對javascript施加的安全限制。瀏覽器的同源策略是指協議,域名…

2011-2021年數字普惠金融指數Bartik工具變量法(含原始數據和Bartik工具變量法代碼)

2011-2021年數字普惠金融指數Bartik工具變量法(含原始數據和Bartik工具變量法代碼) 1、時間:2011-2020(省級、城市),2014-2020(區縣) 2、原始數據來源:北大金融研究中心…

npm的鏡像源和代理的查看和修改

一、鏡像源 查詢當前鏡像源 npm get registry 設置為淘寶鏡像 npm config set registry http://registry.npm.taobao.org/ 設置回默認的官方鏡像 npm config set registry https://registry.npmjs.org/ 設置electron為淘寶鏡像 npm config set ELECTRON_MIRROR "h…

Redis對象類型和結構、內存回收、對象共享

對象類型和結構 在Redis中,無論是鍵key還是值value都是一個對象,每次對Redis數據庫創建一個新的鍵值對時,就至少會創建兩個對象。 常見的對象類型有: 字符串列表哈希集合有序集合 這些對象在Redis中統一用一個結構體redisObjec…

VS2019生成的DLL,給QT(MinGW版本)使用的小結

VS2019端: a 基于生成一個DLL的工程(要注意生成是x86,還是x64的,需要和后面的QT的App工程對應),這里不多解釋了,網上多的是; b 在cpp實現文件里,假如要導出一個這樣的…

Git如何上傳文件到github

Git下載網址: https://git-scm.com/downloads 1. 新建一個空文件夾,用來上傳文件,第一次需創建,以后無需創建 2. 點進去空文件夾,鼠標右鍵,使用Git Bash Here 打開 3. 克隆遠程倉庫:git cl…

深入理解JVM——垃圾回收與內存分配機制詳細講解

所謂垃圾回收,也就是要回收已經“死了”的對象。 那我們如何判斷哪些對象“存活”,哪些已經“死去”呢? 一、判斷對象已死 1、引用計數算法 給對象中添加一個引用計數器,每當有一個地方引用它時,計數器就加一&…

解決git reset --soft HEAD^撤銷commit時報錯

今天在使用git回退功能的時候,遇到以下錯誤: 解決git reset --soft HEAD^撤銷commit時報錯 問題: 在進行完commit后,想要撤銷該commit,于是使用了git reset --soft HEAD^命令,但是出現如下報錯&#xff1…

【學習心得】安裝cuda/cudann和pytorch

一、查看驅動信息 # 進入CMD輸入命令 nvidia-smi 也可以右下角圖標打開NVIDIA 設置進行查看 二、下載安裝CUDA 1、下載 下載地址 https://developer.nvidia.com/ 2、安裝 推薦自定義安裝。建議只勾選Cuda,只安裝這一個就好,以免報錯安裝失敗。 3、驗證…

移動端直播相關技術總結

一、直播APP原理 二、直播APP架構 三、直播APP實現流程 四、流媒體開發 流媒體模塊架構 流媒體相關基礎知識 幀:每一幀代表一幅靜止的圖像 GOP:Group of Pictures,畫面組,一個GOP就是一組連續的畫面,很多幀的集合 碼率…

BC136 KiKi去重整數并排序

給定一個整數序列,KiKi想把其中的重復的整數去掉,并將去重后的序列從小到大排序輸出。 輸入描述 第一行,輸入一個整數n,表示序列有n個整數。 第二行輸入n個整數(每個整數大于等于1,小于等于1000&#xf…

nodejs與前端js大文件、切片、視頻流相關技術示例

nodejs服務代碼 const express require("express"); const fs require("fs");const app express(); // 展示html頁面 app.get("/", function (req, res) {res.sendFile(__dirname "/index.html"); });// nodejs切片讀取文件示例 …

redis-配置詳解(基礎篇)

# 可以配置包含其他redis配置,可以使得配置更清晰化 # include /path/to/local.conf ################################## MODULES ##################################### # Load modules at startup. If the server is not able to load modules # it will abor…

拉丁方設計資料的方差分析(SPSS版+SAS版)

拉丁方設計(Latin square design):實驗研究中涉及一個處理因素和兩個控制因素,每個因素的類別數或水平數相等,此時可采用拉丁方設計,將兩個控制因素分別安排在拉丁方設計的行和列上。該設計類型仍為單因素方…

中電金信通過KCSP認證 云原生能力獲權威認可

中電金信通過KCSP(Kubernetes Certified Service Provider)認證,正式成為CNCF(云原生計算基金會)官方認證的 Kubernetes 服務提供商。 Kubernetes是容器管理編排引擎,底層實現為容器技術,是云原…

ABAP 新語法--Data Processing

1. String Template 新語法引入了字符串模板,用于處理字符串連接以及格式轉換 字符串模板在 | … | 之間定義,主要分為兩部分,固定文本和變量 其中,變量只能在 { … } 內使用,大括號之外的所有字符均作為固定文本使用…