The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Компания Oracle опубликовала Java SE 12"
Отправлено opennews, 20-Мрт-19 10:39 
После шести месяцев разработки компания Oracle выпустила (http://mail.openjdk.java.net/pipermail/announce/2019-March/0...) платформу Java SE 12 (http://www.oracle.com/technetwork/java/javase/downloads/inde...) (Java Platform, Standard Edition 12), в качестве эталонной реализации которой используется открытый проект OpenJDK. В Java SE 12 сохранена  обратная совместимость с прошлыми выпусками платформы Java, все ранее написанные Java-проекты без изменений будут работоспособны при запуске под управлением новой версии.  Готовые для установки сборки Java SE 12 (JDK, JRE и Server JRE) подготовлены (http://jdk.java.net/12) для Linux (x86_64), Solaris (SPARC), Windows и macOS. Разработанная в рамках проекта OpenJDK эталонная реализация Java 12 (http://openjdk.java.net/projects/jdk/12/) полностью открыта под лицензией GPLv2 с исключениями GNU ClassPath, разрешающими динамическое связывание с коммерческими продуктами.

Java SE 12 отнесён к категории выпусков с обычным сроком поддержки,  обновления для которого будут выпускаться до следующего релиза. В качестве ветки с длительным сроком поддержки (LTS) следует использовать Java SE 11,  обновления для которого будут выпускаться до 2026 года. Прошлая LTS-ветка Java 8 будет поддерживаться до декабря 2020 года. Следующий LTS-релиз намечен на сентябрь 2021 года. Напомним, что начиная с  выпуска Java 10 проект перешёл на новый процесс разработки, подразумевающий более  короткий цикл формирования новых релизов. Новая функциональность теперь развивается в одной постоянно обновляемой master-ветке, в которую включаются уже готовые изменения и от которой раз в шесть месяцев ответвляются ветки для стабилизации новых выпусков.


Из новшеств (http://openjdk.java.net/projects/jdk/12/) Java 12 (https://www.oracle.com/technetwork/java/javase/12-relnote-is...) можно отметить (https://jdk.java.net/12/release-notes#newfeatures):

-  Добавлена (http://openjdk.java.net/jeps/189) экспериментальная поддержка сборщика мусора Shenandoah (http://openjdk.java.net/projects/shenandoah/), работающего с минимальными приостановками (Low-Pause-Time Garbage Collector). Планировщик развивается компанией Red Hat и примечателен использованием алгоритма,  сокращающего время остановок во время сборки мусора за счёт проведения чистки параллельно с выполнением  Java-приложений. Размер вносимых сборщиком мусора задержек предсказуем и не зависит от размера кучи, т.е. для куч в 200 MB и 200 GB задержки будут идентичны (не выходят (https://wiki.openjdk.java.net/display/shenandoah/Main) за пределы 50 мс  и обычно укладываются в 10 мс);

-  В состав включён (http://openjdk.java.net/jeps/230) набор для проведения точечных тестов производительности (microbenchmark), позволяющий организовать непрерывное тестирование производительности различных компонентов кодовой базы и упрощающий добавление собственных тестов;

-  Обеспечена (http://openjdk.java.net/jeps/325) предварительная поддержка новой формы выражений "switch", не требующей использования оператора "break" и позволяющей объединять повторяющиеся метки. Например, вместо

   switch (day1) {
       case MONDAY:
       case FRIDAY:
       case SUNDAY:
           System.out.println(6);
           break;
   ...
   int numLetters;
   switch (day2) {
       case MONDAY:
       case FRIDAY:
       case SUNDAY:
           numLetters = 6;
           break;
   ...

новые выражения позволяют указать

   switch (day1) {
       case MONDAY, FRIDAY, SUNDAY -> System.out.println(6);
   ...
   int numLetters = switch (day2) {
    case MONDAY, FRIDAY, SUNDAY -> 6;
   ...

-  Представлен API JVM Constants (http://openjdk.java.net/jeps/334) (java.lang.invoke.constant), позволяющий описать все типы загружаемых констант, используемых в файлах с Java-классами и в компонентах runtime;

-  Предложен один унифицированный порт для архитектуры AArch64 (ранее развивалось два порта aarch64 и arm64, теперь оставлен только порт aarch64);
-  По умолчанию на основе предлагаемого по умолчанию списка классов в процессе сборки JDK обеспечена (http://openjdk.java.net/jeps/341) генерация архивов  CDS (Class-Data Sharing), обеспечивающих совместный доступ приложений к общим классам. При помощи CDS общие классы могут размещаться в отдельном совместно используемом архиве, что позволяет ускорить запуск приложений и снизить накладные расходы. Предоставление архивов CDS сокращает время запуска и позволяет избавить пользователей от выполнения "-Xshare:dump" для создания CDS;

-  В сборщик мусора G1 добавлена поддержка отменяемой (http://openjdk.java.net/jeps/344) чистки смешанных коллекций (Abortable Mixed Collections), позволяющая оборвать процесс необязательной стадии чистки, если превышено максимальное время приостановки на сборку мусора;

-   В сборщике мусора G1 реализована (http://openjdk.java.net/jeps/346) возможность возвращения операционной системе неиспользуемых областей памяти при неактивности приложения.


URL: http://mail.openjdk.java.net/pipermail/announce/2019-March/0...
Новость: https://www.opennet.ru/opennews/art.shtml?num=50356

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру