來源:OSC開源社區(qū)(ID:oschina2013)
記錄模式 (預(yù)覽版)
外部函數(shù)和內(nèi)存 API (預(yù)覽版)
虛擬線程(預(yù)覽版)
Vector API (第四次孵化)
Switch 模式匹配(第三預(yù)覽版)
結(jié)構(gòu)化并發(fā)(孵化階段)
JDK 19 / Java 19 已正式發(fā)布。
新版本總共包含 7 個(gè)新的 JEP:
405: | Record Patterns (Preview) 記錄模式 |
---|---|
422: | Linux/RISC-V Port Linux/RISC-V 移植 |
424: | Foreign Function & Memory API (Preview) 外部函數(shù)和內(nèi)存 API |
425: | Virtual Threads (Preview) 虛擬線程 |
426: | Vector API (Fourth Incubator) 向量 API |
427: | Pattern Matching for switch (Third Preview) Switch 模式匹配 |
428: | Structured Concurrency (Incubator) 結(jié)構(gòu)化并發(fā) |
下面對(duì)新特性作簡(jiǎn)短的介紹:
記錄模式 (預(yù)覽版)
使用*記錄模式 *增強(qiáng) Java 編程語言以解構(gòu)記錄值,可以嵌套記錄模式和類型模式,實(shí)現(xiàn)強(qiáng)大的、聲明性的和可組合的數(shù)據(jù)導(dǎo)航和處理形式。這是一個(gè)預(yù)覽語言功能。
Linux/RISC-V 移植
將JDK 移植到 Linux/RISC-V,目前僅支持 RISC-V 的 RV64GV 配置(包含向量指令的通用 64 位 ISA)。將來可能會(huì)考慮支持其他 RISC-V 配置,例如通用 32 位配置 (RV32G)。
外部函數(shù)和內(nèi)存 API (預(yù)覽版)
引入一個(gè) API,Java 程序可以通過該 API 與 Java 運(yùn)行時(shí)之外的代碼和數(shù)據(jù)進(jìn)行互操作。通過該 API 可有效地調(diào)用外部函數(shù)( JVM 之外的代碼)和安全地訪問外部?jī)?nèi)存(不受 JVM 管理的內(nèi)存),使得 Java 程序能夠調(diào)用本機(jī)庫(kù)并處理本機(jī)數(shù)據(jù),而不會(huì)出現(xiàn) JNI 的脆弱性和危險(xiǎn)。這是個(gè)預(yù)覽版 API 。
虛擬線程(預(yù)覽版)
將虛擬線程引入 Java 平臺(tái)。虛擬線程是輕量級(jí)線程,可顯著地減少編寫、維護(hù)和觀察高吞吐量并發(fā)應(yīng)用程序的工作量。這是一個(gè)預(yù)覽 API,我們 OSC 曾對(duì)此進(jìn)行了詳細(xì)介紹 。
Vector API (第四次孵化)
引入一個(gè) API 來表達(dá)在運(yùn)行時(shí)能夠可靠編譯的向量計(jì)算,在支持的 CPU 架構(gòu)上優(yōu)化向量指令,從而實(shí)現(xiàn)優(yōu)于標(biāo)量計(jì)算的性能。
Switch 模式匹配(第三預(yù)覽版)
用switch 表達(dá)式和語句的模式匹配,以及對(duì)模式語言的擴(kuò)展來增強(qiáng) Java 編程語言。將模式匹配擴(kuò)展到 switch 中,允許針對(duì)一些模式測(cè)試表達(dá)式,這樣就可以簡(jiǎn)明而安全地表達(dá)復(fù)雜的面向數(shù)據(jù)的查詢。該特性最早在 Java 17 中作為預(yù)覽版出現(xiàn), Java 19 為第三次預(yù)覽。
結(jié)構(gòu)化并發(fā)(孵化階段)
引入用于結(jié)構(gòu)化并發(fā)的 API 來簡(jiǎn)化多線程編程,結(jié)構(gòu)化并發(fā)將不同線程中運(yùn)行的多個(gè)任務(wù)視為單個(gè)工作單元,從而簡(jiǎn)化錯(cuò)誤處理、提高可靠性并增強(qiáng)可觀察性。這是一個(gè)孵化階段的 API。另附
JDK 19 時(shí)間表:
2022/06/09 | Rampdown Phase One Rampdown 第一階段 (fork from main line) |
---|---|
2022/07/21 | Rampdown Phase Two Rampdown 第二階段 |
2022/08/11 | Initial Release Candidate 初始候選版本(RC) |
2022/08/25 | Final Release Candidate 最終候選版本(RC) |
2022/09/20 | General Availability 穩(wěn)定版本 |
其中 Rampdown 主要是修 Bug 和測(cè)試階段。
還有一個(gè)有意思的事:從 Java 16 開始,每個(gè)版本的特性數(shù)量越來越少:
Java 16:17 個(gè)
Java 17:14 個(gè)
Java 18 :9 個(gè)
Java 19 :7 個(gè)
Java 20 不會(huì)變成 5 個(gè)吧...
-
Linux
+關(guān)注
關(guān)注
87文章
11345瀏覽量
210385 -
JAVA
+關(guān)注
關(guān)注
19文章
2974瀏覽量
105136 -
JDK
+關(guān)注
關(guān)注
0文章
82瀏覽量
16636 -
線程
+關(guān)注
關(guān)注
0文章
505瀏覽量
19756 -
RISC-V
+關(guān)注
關(guān)注
45文章
2322瀏覽量
46588
原文標(biāo)題:JDK 19 / Java 19 正式發(fā)布,虛擬線程來了!
文章出處:【微信號(hào):芋道源碼,微信公眾號(hào):芋道源碼】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
LM3447-A19-120VEVM用戶指南
![LM3447-A<b class='flag-5'>19</b>-120VEVM用戶指南](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
高速數(shù)據(jù)計(jì)算卡設(shè)計(jì)原理圖:512-基于ZU19EG的4路100G 8路40G的光纖匯流計(jì)算卡
![高速數(shù)據(jù)計(jì)算卡設(shè)計(jì)原理圖:512-基于ZU<b class='flag-5'>19</b>EG的4路100G 8路40G的光纖匯流計(jì)算卡](https://file1.elecfans.com/web3/M00/00/F3/wKgZPGdPs2GAQmRAAABPCsXdSuw775.png)
19位國(guó)際頂尖學(xué)者聯(lián)袂撰寫《重新審視邊緣人工智能:機(jī)遇與挑戰(zhàn)》
![<b class='flag-5'>19</b>位國(guó)際頂尖學(xué)者聯(lián)袂撰寫《重新審視邊緣人工智能:機(jī)遇與挑戰(zhàn)》](https://file.elecfans.com/web2/M00/4E/DC/poYBAGLCjeiALm_WAAAYmfR7Qec474.png)
Java集合API的改進(jìn)介紹
![<b class='flag-5'>Java</b>集合API的改進(jìn)介紹](https://file1.elecfans.com/web2/M00/0D/0F/wKgaomc_9xKALcceAAAfW4_9zrE601.jpg)
甲骨文發(fā)布Java 23
LM19溫度傳感器數(shù)據(jù)表
![LM<b class='flag-5'>19</b>溫度傳感器數(shù)據(jù)表](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
JDK8升級(jí)JDK11最全實(shí)踐干貨來了
![<b class='flag-5'>JDK</b>8升級(jí)<b class='flag-5'>JDK</b>11最全實(shí)踐干貨<b class='flag-5'>來了</b>](https://file1.elecfans.com//web2/M00/F2/CF/wKgZomZ6aOaAKPm3AAIWgNCnYEM823.png)
JDK11升級(jí)JDK17最全實(shí)踐干貨來了
![<b class='flag-5'>JDK</b>11升級(jí)<b class='flag-5'>JDK</b>17最全實(shí)踐干貨<b class='flag-5'>來了</b>](https://file1.elecfans.com//web2/M00/F2/CF/wKgZomZ6aKOAD22HAAi5bgySCzk303.png)
高速信號(hào)處理板卡設(shè)計(jì)原理圖:519-基于ZU19EG的4路100G光纖的PCIe 雷達(dá)信號(hào)處理卡
![高速信號(hào)處理板卡設(shè)計(jì)原理圖:519-基于ZU<b class='flag-5'>19</b>EG的4路100G光纖的PCIe 雷達(dá)信號(hào)處理卡](https://file.elecfans.com/web2/M00/AB/13/poYBAGSCmHSAPH9LAAIfP1tKSwk293.png)
vivo WATCH GT智能手表聯(lián)手vivo S19手機(jī)即將發(fā)布
采用APM19的 12V EPS參考設(shè)計(jì)板SEC-EPS-12V-APM19-GEVB數(shù)據(jù)手冊(cè)
![采用APM<b class='flag-5'>19</b>的 12V EPS參考設(shè)計(jì)板SEC-EPS-12V-APM<b class='flag-5'>19</b>-GEVB數(shù)據(jù)手冊(cè)](https://file1.elecfans.com/web2/M00/D7/66/wKgaomYngb2AWEt2AAHdRMGmhSk952.png)
評(píng)論