幫助中心 | 我的帳號 | 關於我們

新一代垃圾回收器ZGC設計與實現/Java核心技術系列

  • 作者:彭成寒
  • 出版社:機械工業
  • ISBN:9787111633655
  • 出版日期:2019/09/01
  • 裝幀:平裝
  • 頁數:203
人民幣:RMB 89 元      售價:
放入購物車
加入收藏夾

內容大鋼
    自Java中引入垃圾回收器以來,垃圾回收器的發展從未停止過。Java中成熟的垃圾回收器有:串列垃圾回收器、並行垃圾回收器、併發標記回收器(Concurrent Mark Sweep,CMS)、垃圾優先回收器(Garbage First,G1)。在JDK 11中引入了一款新的垃圾回收器——ZGC。
    雖然新的垃圾回收器不斷地湧現,但是垃圾回收的基本演算法變化並不大。簡單來說,回收演算法主要有:複製、標記清除、標記壓縮。JVM中不同的垃圾回收器都是基於這些基本演算法實現的,不同的垃圾回收器的區別在於選擇的演算法不同,實現時後台線程採用的並行/併發方式不同。本書嘗試對ZGC的演算法實現進行分解,逐步揭開垃圾回收器的演算法內幕,然後再給出調優方法。

作者介紹
彭成寒
    彭成寒,高級Java工程師,目前主要從事風控系統設計、演算法建模、大數據處理等工作。有超過10年的Java和C++開發經驗。

目錄
前言
第1章  垃圾回收器概述
  1.1  垃圾回收演算法
  1.2  JVM垃圾回收器
    1.2.1  串列回收
    1.2.2  並行回收
    1.2.3  CMS
    1.2.4  G
    1.2.5  ZGC
    1.2.6  Shenandoah
第2章  ZGC內存管理
  2.1  操作系統地址管理
  2.2  ZGC內存管理
    2.2.1  多視圖映射
    2.2.2  ZGC多視圖映射
    2.2.3  頁面設計
    2.2.4  對NUMA的支持
    2.2.5  ZGC中的物理內存管理
    2.2.6  ZGC中的虛擬內存管理
    2.2.7  ZGC內存預分配
  2.3  ZGC對象分配管理
    2.3.1  對象空間分配
    2.3.2  頁面分配
第3章  ZGC線程
  3.1  線程的基本概念
  3.2  控制線程
    3.2.1  時鐘觸發器
    3.2.2  消息觸發
    3.2.3  VMThread
  3.3  工作線程
  3.4  垃圾回收觸發的時機
第4章  ZGC垃圾回收演算法的設計
  4.1  併發垃圾回收演算法
    4.1.1  併發垃圾回收演算法概述
    4.1.2  ZGC併發演算法的設計
  4.2  併發處理
    4.2.1  併發處理概述
    4.2.2  ZGC併發處理演算法
    4.2.3  ZGC併發處理演算法演示
第5章  ZGC垃圾回收演算法的實現
  5.1  垃圾回收的實現
    5.1.1  初始標記
    5.1.2  併發標記
    5.1.3  再標記和非強根並行標記
    5.1.4  非強引用併發標記和引用併發處理
    5.1.5  重置轉移集
    5.1.6  回收無效的頁面
    5.1.7  選擇待回收的頁面
    5.1.8  初始化待轉移集合的轉移表
    5.1.9  初始轉移

    5.1.10  併發轉移
    5.1.11  垃圾回收演算法再討論
  5.2  垃圾回收演算法演示
第6章  ZGC日誌解讀
  6.1  Xlog簡介
  6.2  測試用例設計
  6.3  ZGC初始化信息
  6.4  垃圾回收觸發信息
  6.5  垃圾回收過程中每一步的信息
  6.6  統計信息
    6.6.1  垃圾回收器信息
    6.6.2  競爭信息
    6.6.3  同步等待信息
    6.6.4  內存信息
    6.6.5  垃圾回收步驟信息
    6.6.6  子階段信息
    6.6.7  線程信息
第7章  ZGC參數和基準測試
  7.1  參數簡介
    7.1.1  ZGC新引入參數
    7.1.2  GC通用參數
  7.2  測試評估
    7.2.1  測試準備
    7.2.2  測試與測試報告
第8章  ZGC的發展與展望
  8.1  類回收
  8.2  單代回收
  8.3  新功能和多平台
第9章  JVM編譯調試
  9.1  下載源代碼
  9.2  代碼概覽
  9.3  編譯JVM
  9.4  調試ZGC
    9.4.1  啟動GDB
    9.4.2  對象分配
    9.4.3  觸發垃圾回收
    9.4.4  初始標記
    9.4.5  併發標記
    9.4.6  初始轉移
    9.4.7  併發轉移
    9.4.8  重定位
  9.5  使用HSDB學習JVM中對象布局
    9.5.1  C 對象布局原理
    9.5.2  Java對象布局原理
    9.5.3  用HSDB分析Java對象布局
第10章  Shenandoah簡介
  10.1  概述
  10.2  Shenandoah垃圾回收策略
  10.3  Shenandoah垃圾回收演算法
    10.3.1  正常回收演算法

    10.3.2  遍歷回收演算法
附錄A Cassandra簡介
附錄B YCSB簡介

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032