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
人が弾くピアノに合わせて演奏する仮想バイオリニスト 他者演奏の音声から演奏の動きと音を自動作成 :Innovative Tech
イラスト・デザイン
2021-03-11 22:42
世界株式の調整は続く?–リスクはリターンの源泉なり
IT関連
2021-05-21 10:50
Pythonの高速なスーパーセット「Mojo」がAppleシリコン搭載のMacにまもなく対応
Apple
2023-10-17 17:26
コニカミノルタとキンドリルが協業–画像IoTを展開
IT関連
2022-06-12 22:39
電通デジタル、LINEアカウントによる集客サービス向けの機能を開発–APIツールの複数接続を実現
IT関連
2021-07-27 15:23
Facebookがニュースフィードの投稿に企業の関連コンテンツを表示するテストを米国で開始
ネットサービス
2021-04-17 05:36
「d払い」不具合、10時間半で復旧
企業・業界動向
2021-06-03 16:51
データ時代にデータ管理をどう容易にするか–インフォマティカのワリアCEO
IT関連
2021-04-27 19:03
ソニー「α1」は“新世代の最高峰”を見せてくれた :荻窪圭のデジカメレビュープラス
くらテク
2021-01-29 07:52
クラウド関連の製品/サービスへの投資継続で成長を加速–サイオス・喜多社長
IT関連
2023-01-12 05:18
GitHub、「GitHub CLI」でprojectコマンドを一般提供
IT関連
2023-07-14 07:43
「アップルカー」実現に向け前進、BMW i3やi8の開発を指揮した新興EV企業Canoo元CEOがアップルに
モビリティ
2021-06-12 23:03
NTT東日本と調和技研、農作物の集荷配送ルート最適化のAIプログラムを開発
IT関連
2022-07-06 03:13
ZyngaがRPGゲーム分野に拡大を目指し「Torchlight III」のEchtra Gamesを買収
ゲーム / eSports
2021-03-05 20:02