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
「チケット販売は半分」 フジロック、開催へ意欲も難しさ浮き彫りに
くらテク
2021-04-20 03:49
サステナブルに関するポッドキャストはなぜVCも支援する事業に転換したのか
EnviroTech
2021-02-23 19:48
血中酸素酸素レベル測れるスマートウォッチ「OPPO Band Style」4480円で登場
くらテク
2021-04-20 09:14
日本空港ビルデング、羽田空港公式アプリ「HANEDA Navigator」をWOVN.appで多言語化
IT関連
2024-12-27 06:09
Salesforceが約3兆円で買収したSlackとの初の統合を発表
ネットサービス
2021-08-19 20:51
2022年のランサムウェア動向と脅威アクター
IT関連
2022-12-14 07:08
みずほ銀ATM障害、カードの2割が未返却 金融庁は報告命令
IT関連
2021-03-05 02:55
AWS、マレーシアに初のリージョンを開設–GDPは約121億ドル増加の見込み
IT関連
2024-08-24 14:24
第4回 VPSでのリモート接続
IT関連
2023-07-20 21:40
Linuxを標的とする新たなステルス型マルウェア「Shikitega」が発見
IT関連
2022-09-09 07:16
理光商事、「奉行クラウド」と「kintone」自動連携で業務効率向上
IT関連
2022-05-28 03:02
NEC、Azureを優先クラウドに選定–マイクロソフトと協業強化
IT関連
2021-07-13 23:52
習慣化アプリ「みんチャレ」のエーテンラボが3.7億円調達、健保向け事業開発・営業・カスタマーサクセスの人材採用注力
IT関連
2022-03-02 23:24
熊谷組、クラウド型ネットワーク対策を導入–通信品質の改善も
IT関連
2024-02-29 04:57