JDK 12帶來了許多新功能,包括Switch Expressions的預(yù)覽和Garbage-First(G1)收集器的可丟棄混合集合。
JDK 12的增強(qiáng)功能
低暫停時間垃圾收集器(JEP 189)
代號為“Shenandoah”的實驗性功能增加了一種新算法,旨在通過與正在運(yùn)行的Java線程同時處理疏散工作來減少GC暫停時間。
Microbenchmark套房(JEP 230)
此更新為JDK源代碼添加了一套基本的微基準(zhǔn)測試,使開發(fā)人員可以輕松運(yùn)行現(xiàn)有的微基準(zhǔn)測試并創(chuàng)建新的基準(zhǔn)測試。
切換表達(dá)式(JEP 325)
作為此版本中的預(yù)覽提供,此功能擴(kuò)展了switch語句,因此可以將其用作語句或表達(dá)式。它允許兩種形式使用“傳統(tǒng)”或“簡化”范圍和控制流行為。該公司表示,“這些改變將簡化日常編碼,并為切換中使用模式匹配(JEP 305)做好準(zhǔn)備!
JVM常量API(JEP 334)
此API旨在為關(guān)鍵類文件和運(yùn)行時工件的名義描述建模,特別是可從常量池加載的常量,該常量池存儲類中字節(jié)碼指令的操作數(shù)。
一個AArch64端口,而不是兩個(JEP 340)
此功能刪除了與arm64端口相關(guān)的所有源,同時保留了32位ARM端口和64位aarch64端口。此功能允許所有貢獻(xiàn)者將他們的精力集中在單個64位ARM實現(xiàn)上,并消除了維護(hù)兩個端口所需的重復(fù)工作。
默認(rèn)CDS檔案(JEP 341)
此功能旨在增強(qiáng)JDK構(gòu)建過程,以使用64位平臺上的默認(rèn)類列表生成類數(shù)據(jù)共享(CDS)歸檔。
G1的可流動混合收集(JEP 344)
此增強(qiáng)功能使G1混合集合可能會超出暫停目標(biāo)。
從G1快速返回未使用的承諾內(nèi)存(JEP 346)
此功能旨在允許G1垃圾收集器在空閑時自動將Java堆內(nèi)存返回到操作系統(tǒng)。
JDK 12的特點
189 Shenandoah: A Low-Pause-Time Garbage Collector (Experimental) 低暫停時間的 GC
230 Microbenchmark Suite 微基準(zhǔn)測試套件
325 Switch Expressions (Preview) Switch 表達(dá)式
334 JVM Constants API JVM 常量 API
340 One AArch64 Port, Not Two 只保留一個 AArch64 實現(xiàn)
341 Default CDS Archives 默認(rèn)類數(shù)據(jù)共享歸檔文件
344 Abortable Mixed Collections for G1 可中止的 G1 Mixed GC
346 Promptly Return Unused Committed Memory from G1 G1 及時返回未使用的已分配內(nèi)存
JDK 12的特點介紹
Shenandoah:低暫停時間的 GC(實驗性功能)
新增了一個名為 Shenandoah 的 GC 算法,通過與正在運(yùn)行的 Java 線程同時進(jìn)行 evacuation 工作來減少 GC 暫停時間。使用 Shenandoah 的暫停時間與堆大小無關(guān),這意味著無論堆是 200 MB 還是 200 GB,都將具有相同的暫停時間。
Microbenchmark Suite
微基準(zhǔn)測試套件
JDK 源碼中新增了一套微基準(zhǔn)測試套件,使開發(fā)人員可以輕松運(yùn)行現(xiàn)有的微基準(zhǔn)測試并創(chuàng)建新的基準(zhǔn)測試。
Switch Expressions (Preview)
Switch 表達(dá)式(預(yù)覽功能)
擴(kuò)展了 switch 語句,使其不僅可以作為語句(statement),還可以作為表達(dá)式(expression),并且兩種寫法都可以使用傳統(tǒng)的 switch 語法,或者使用簡化的“case L ->”模式匹配語法作用于不同范圍并控制執(zhí)行流。這些更改將簡化日常編碼工作,并為 switch 中的模式匹配(JEP 305)做好準(zhǔn)備。
JVM Constants API
JVM 常量 API
引入 API 來模擬關(guān)鍵類文件和運(yùn)行時工件的描述,特別是可從常量池加載的常量。在新的 java.lang.invoke.constant 包中定義了一系列基于值的符號引用(JVMS 5.1)類型,它們能夠描述每種可加載常量。符號引用以純 nominal 形式描述可加載常量,與類加載或可訪問性上下文區(qū)分開。有些類可以作為自己的符號引用(例如 String),而對于可鏈接常量,定義了一系列符號引用類型(ClaSSDesc、MethodTypeDesc、MethodHandleDesc 和 DynamicConstantDesc),它們包含描述這些常量的 nominal 信息。
One AArch64 Port, Not Two
只保留一個 AArch64 實現(xiàn)
刪除了與 arm64 相關(guān)的所有源,同時保留 32 位 ARM 實現(xiàn)和 64 位 aarch64。
JDK 中存在兩套 64 位 ARM 實現(xiàn),主要存在于 src/hotspot/cpu/arm 和 open/src/hotspot/cpu/aarch64 目錄。兩者都實現(xiàn)了 aarch64,現(xiàn)在將只保留后者,刪除由 Oracle 提供的 arm64。這將使貢獻(xiàn)者將他們的精力集中在單個 64 位 ARM 實現(xiàn)上,并消除維護(hù)兩套實現(xiàn)所需的重復(fù)工作。
Default CDS Archives
默認(rèn)類數(shù)據(jù)共享歸檔文件
針對 64 位平臺,使用默認(rèn)類列表增強(qiáng) JDK 構(gòu)建過程以生成類數(shù)據(jù)共享(class data-sharing,CDS)檔。
Abortable Mixed Collections for G1
可中止的 G1 Mixed GC
如果 G1 Mixed GC 存在超出暫停目標(biāo)的可能性,則使其可中止。
Promptly Return Unused Committed Memory from G1
G1 及時返回未使用的已分配內(nèi)存
增強(qiáng) G1 GC,在空閑時自動將 Java 堆內(nèi)存返回給操作系統(tǒng)。為了實現(xiàn)向操作系統(tǒng)返回最大內(nèi)存量的目標(biāo),G1 將在應(yīng)用程序不活動期間定期執(zhí)行或觸發(fā)并發(fā)周期以確定整體 Java 堆使用情況。這將導(dǎo)致它自動將 Java 堆的未使用部分返回給操作系統(tǒng)。而在用戶控制下,可以可選地執(zhí)行完整的 GC,以使返回的內(nèi)存量最大化。
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版

















下載
下載
下載 
Apifox(Api調(diào)試管理工具)2.1.29.1 綠色版
小烏龜代碼管理工具(TortoiseGit)2.13.0.1 中文免費(fèi)版
SoapUI破解版5.7.0 最新版
小皮面板(phpstudy)8.1.1.3 官方最新版
Ruby3.0(ruby運(yùn)行環(huán)境)3.0.2 官方版
gcc編譯器( MinGW-w64 9.0.0綠色版)免費(fèi)下載
寶玉編輯助手0.0.05新版
火花編程軟件2.7.2 官方pc版
猿編程少兒班客戶端3.1.1 官方版
Restorator 2009中文版單文件漢化版
十六進(jìn)制閱讀小工具
IT碼農(nóng)工具軟件1.0 中文免費(fèi)版
python爬蟲實戰(zhàn)入門教程pdf免費(fèi)版
Postman Canary(網(wǎng)頁調(diào)試軟件)官方版7.32.0綠色免費(fèi)版
大耳猴少兒編程客戶端1.1.2 官方免費(fèi)版
excel批量sql語句(通過excel構(gòu)建sql工具)1.0 免費(fèi)版
軟件添加彈窗和網(wǎng)址工具1.0 中文免費(fèi)版
天霸編程助手2.1 單文件中文版
ida pro 中文破解版(反編譯工具)7.0 永樂漢化版64位
VBA代碼助手3.3.3.1官方版
Node.js開發(fā)實戰(zhàn)教程百度云完整版【36課】
猿編程電腦端3.9.1.347 官方PC版
蒲公英 Android SDKV4.1.11 官方最新版
蒲公英iOS SDK2.8.9.1 官方最新版
WxPython中文可視化編輯器1.2 簡體中文免費(fèi)版
Python代碼生成器1.0 中文免費(fèi)版
C語言代碼實例助手1.0 免費(fèi)版
c primer plus第6版中文版高清版
C++ Primer Plus 2021電子版最新版
notepad++7.8.2 中文免費(fèi)版
wpe pro Alpha 0.9a 中文綠色版




Microsoft Spy++9.10 中文綠色版
源代碼保護(hù)工具(Dotfuscator Professional
MDB數(shù)據(jù)庫管理軟件1.0 中文免費(fèi)版
源碼安全監(jiān)測工具(Fortify SCA 2016)【附cr
RTX ServerSDK 2015官方最新版
阿貓串口調(diào)試助手2.4.0.0綠色免費(fèi)版
精易論壇SQL語句生成器2.1 綠色最新版 【
java開源報表系統(tǒng)(JasperReports Library)6
獨立團(tuán)游戲作坊窗口分析工具【VIP全套教程及