可用於生產的JDK 19 釋出

banq發表於2022-09-21

Java 19 GA版本於九月二十日釋出,其中包含虛擬執行緒、結構化併發 API、密封型別和模式匹配switch——所有這些都是預覽版,但仍然非常酷!
當前是Build 36,也就是 GA 版本,可用於生產。
來自 Oracle 的 GPL 許可 OpenJDK 版本可在此處獲得: https://jdk.java.net/19

以下是重大變化的亮點:

JEP 405記錄模式(預覽)
使用記錄模式增強 Java 程式語言以解構記錄值。可以巢狀記錄模式和型別模式,以實現強大的、宣告性的和可組合的資料導航和處理形式。

JEP 422 Linux/RISC-V 埠
將 JDK 移植到 Linux/RISC-V。

JEP 424外部函式和記憶體 API(預覽版)
引入一個 API,Java 程式可以透過該 API 與 Java 執行時之外的程式碼和資料進行互操作。透過有效地呼叫外部函式(即 JVM 之外的程式碼)和安全地訪問外部記憶體(即不受 JVM 管理的記憶體),API 使 Java 程式能夠呼叫本機庫並處理本機資料,而不會出現脆弱性和危險。 

JEP 425虛擬執行緒(預覽版)
將虛擬執行緒引入Java 平臺。虛擬執行緒是輕量級執行緒,可顯著減少編寫、維護和觀察高吞吐量併發應用程式的工作量。

JEP 426 Vector API(第四個孵化器)
引入一個 API 來表達向量計算,該計算可以在執行時可靠地編譯為支援的 CPU 架構上的最佳向量指令,從而實現優於等效標量計算的效能。

JEP 427開關模式匹配(第三次預覽)
switch透過表示式和語句的模式匹配來增強 Java 程式語言 。擴充套件模式匹配以switch允許針對多個模式測試表示式,每個模式都有特定的操作,以便可以簡潔安全地表達複雜的面向資料的查詢。

JEP 428結構化併發(孵化器)
透過引入用於 結構化併發的 API 來簡化多執行緒程式設計。結構化併發將在不同執行緒中執行的多個任務視為單個工作單元,從而簡化錯誤處理和取消,提高可靠性並增強可觀察性。這是一個 孵化 API

GraalVM JDK19 dev builds也釋出了:
GraalVM 是一個高效能、可嵌入的多語言虛擬機器,用於執行用 JavaScript、Python、Ruby、R、基於 JVM 的語言(如 Java、Scala、Kotlin)和基於 LLVM 的語言(如 C 和 C++)編寫的應用程式。

使用GraalVM原生映象,使用虛擬執行緒和通訊順序程式 、用PGO和G1 GC構建的 "生命遊戲 "演示可以立即啟動,甚至比JIT模式更快! 

Demo
 

相關文章