Java 19が正式リリース。より軽量な仮想スレッド、RISC-Vへの移植など新機能。1年後のJava 21が次のLTS版に

今回は「Java 19が正式リリース。より軽量な仮想スレッド、RISC-Vへの移植など新機能。1年後のJava 21が次のLTS版に」についてご紹介します。

関連ワード (年前、役立、発表等) についても参考にしながら、ぜひ本記事について議論していってくださいね。

本記事は、Publickey様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。


Javaの新バージョン「Java 19」正式版がリリースされました。

Java 19 is now available! #Java19 #JDK19 #openjdk

Download now: https://t.co/dKovWtNGrs
Release notes: https://t.co/EOyaGTLHrl
API Javadoc: https://t.co/ViIj9H4JrI
Features: https://t.co/XuEExSR7gs
Inside Java on JDK 19: https://t.co/q5WGZwxMzb pic.twitter.com/XYYA06ll0m

— Java (@java) September 20, 2022

Javaは6カ月ごとに「フィーチャーリリース」と呼ばれるバージョンアップが行われ、そのなかの1つのバージョンが3年ごとに長期サポート(LTS:Long Term Support)版に指定されてきました。

現在のLTS版は2021年9月にリリースされたJava 17です。企業向けのシステム開発などで一定期間は安定したJavaのバージョンを使いたい場合にはLTS版のJava 17を、最新の機能をいちはやく利用したい場合には今回のJava 19を利用するのが適切でしょう。

参考:3年ぶりの長期サポート版となる「Java 17」正式版がリリース。M1 Macのサポート、Sealed Classの追加など

オラクルは、これまで3年ごとだったLTS版の登場の間隔を2年にすることを表明しています。そのため、次のLTS版は1年後に登場するJava 21になる予定です。

軽量な仮想スレッド、RISC-V版の登場、外部ライブラリの呼び出しなど

Java 19での注目の新機能は、プレビュー版として追加されたVirtual Threads(仮想スレッド:JEP 425)です。これまでJavaのスレッド機能は、JavaVMが実行されているOSが提供するスレッドと1対1対応していました。

Javaのサーバアプリケーションでは、リクエストごとにスレッドを立ち上げて並行処理を行う仕組みが実装されることも多く、その場合にはJavaによる多数のスレッド作成によってOS側でも多数のスレッドが作成され、OS上で多数のコンテキストスイッチングやメモリ消費が発生することになり、それが処理のオーバーヘッドになることがありました。

Virtual Threadは、OSによるスレッド生成に依存せず、JavaVMの中でJavaのスレッドを作成し管理できるようにしたものです。これまでよりも大幅に軽量なスレッド作成と管理が可能になり、スレッドを用いた多数の並行処理がさらに高速でスケーラブルなものになっています。

Linux/RISC-V版(JEP 422)もJava 19で登場しました。

プレビュー機能として追加されたForeign Function & Memory API(JEP 424)は、JNI(Java Native Interface)をより高性能で簡潔なAPIへと置き換える目的で開発された、Javaランタイムの外部にあるコードやデータとの相互運用性を実現するためのAPIです。

例えばTensorFlowのようなJava以外のプログラミング言語で開発されたライブラリなどをラップしてJavaから呼び出せるようにする場合などに役立ちます。

1年後のJava 21が次のLTS版に

オラクルはちょうど1年前に、LTS版の提供サイクルをそれまでの3年ごとから2年ごとに変更する提案を発表しました。

参考:Javaの長期サポート(LTS)版、次回は2年後に登場の見通し。オラクルがLTSのサイクルを3年から2年に変更提案

今回のJava 19の登場に当たり、この方針に変更がないかどうかを米オラクルのJavaプラットフォーム開発担当シニア・バイスプレジデント ジョージ・サーブ氏に確認したところ、この発表の通りオラクルが商用版として提供しているOracle JDKにおいて、LTSは2年サイクルとなり、次のLTS版は1年後のJava 21となる、との回答を得ました。

Javaへの影響度が極めて高いオラクルのLTS版サイクルが3年ごとではなく2年ごとでほぼ確定している点については、安定したJavaのバージョンで開発や運用を想定しているJavaデベロッパーにとって十分に留意すべき点だといえそうです。

COMMENTS


Recommended

TITLE
CATEGORY
DATE
業務自動化のUiPathが約790億円調達、IPOもまもなく
ソフトウェア
2021-02-03 06:49
Anthropic、AIチャットボット「Claude 2」を一般公開
IT関連
2023-07-13 01:36
カプコン、ゲーム開発での特権アクセス管理機能を強化
IT関連
2023-01-25 11:28
デジタル庁の民間人採用、倍率は40倍以上 1432人が応募
キャリア・しごと
2021-01-27 06:45
ウェブサイト多言語化「WOVN.io」に「高精度住所翻訳」機能–住所をローマ字表記化
IT関連
2023-08-18 02:26
年収800万円以上のエンジニアは「Rust」と「Go」に注目 転職サービスが1000人調査
キャリア・しごと
2021-08-03 21:13
IT運用の自動化を支援する「Kyndryl Bridge」–キンドリルが事業戦略
IT関連
2022-12-02 10:04
NECの森田社長が新たに掲げる「Truly Open, Truly Trusted」とは
IT関連
2022-09-14 11:52
人工知能のクローズド化に反対する新興企業2社の決意
IT関連
2023-06-06 12:50
弘前大学、統合人事システムを導入–約2万4000時間の削減見込む
IT関連
2022-07-24 06:15
MacBook ProでSDカードスロット、HDMI ポートが復活?
IT関連
2021-02-25 07:43
JR東日本商事、クラウド型のIT運用管理サービスを導入–効率的なIT資産管理を推進
IT関連
2023-03-16 00:18
杉並区、被虐待児の出欠確認アプリをノーコード開発 早期発見に活用
企業・業界動向
2021-06-16 08:13
Capsuleが「超シンプル」な分散型ソーシャルメディアを構築するために1.6億円調達
ネットサービス
2021-03-11 23:22