Java 27 a fost lansat: G1 devine Garbage Collector-ul implicit peste tot și sunt introduse antetele de obiecte compacte

 

Oracle a anunțat lansarea oficială a versiunii Java 27, cel mai nou feature release al platformei Java, apărut la șase luni după Java 26[cite: 1]. Această versiune include 9 propuneri principale de îmbunătățire (JEP - JDK Enhancement Proposals), care aduc modificări mașinii virtuale (JVM), limbajului, securității, bibliotecilor și instrumentelor de dezvoltare[cite: 1].

Punctele cheie și noutățile din Java 27

1. G1 devine Garbage Collector-ul implicit în toate mediile

Schimbarea majoră a acestei versiuni este că G1 (Garbage-First) devine colecționarul de deșeuri implicit peste tot[cite: 1]. În versiunile anterioare, mașina virtuală HotSpot putea selecta automat colecționarul Serial în anumite configurații sau resurse limitate[cite: 1]. În JDK 27, G1 va fi selectat implicit în toate situațiile în care utilizatorul nu specifică un alt Garbage Collector[cite: 1].

2. Antete de obiecte compacte (Compact Object Headers) activate implicit

Pe arhitecturile pe 64 de biți, această funcționalitate reduce dimensiunea antetelor de obiect de la 96 biți la 64 biți[cite: 1]. Această optimizare scade amprenta de memorie pe heap, îmbunătățește localizarea datelor și permite stocarea unui număr mai mare de obiecte în aceeași memorie fizică[cite: 1].

3. Schimb hibrid de chei post-cuantice pentru TLS 1.3

Java 27 introduce suport nativ pentru schimbul de chei hibrid rezistent la calculul cuantic în cadrul protocolului TLS 1.3[cite: 1]. Implementarea combină algoritmii criptografici tradiționali cu cei rezistenți la calculatoarele cuantice și este disponibilă automat prin API-urile javax.net.ssl, fără a fi necesare modificări de cod în aplicații[cite: 1].

4. Securitate și diagnoză îmbunătățită în JFR

Java Flight Recorder (JFR) primește funcționalitatea In-Process Data Redaction, care permite anonimizarea sau eliminarea automată a argumentelor din linia de comandă, variabilelor de mediu și proprietăților de sistem înainte ca datele de diagnoză să părăsească procesul Java[cite: 1]. Această măsură previne scurgerea accidentală de informații sensibile în înregistrările de diagnosticare[cite: 1].

5. Noutăți de limbaj și funcționalități în fază Preview / Incubator

  • Tipuri primitive în pattern matching (Preview 5): Se continuă integrarea valorilor primitive în funcționalitățile de pattern matching, instanceof și expresiile switch[cite: 1].

  • Structured Concurrency (Preview 7): Facilitează gestionarea grupurilor de sarcini concurente ca o singură unitate, simplificând anularea, tratarea erorilor și finalizarea proceselor[cite: 1].

  • Lazy Constants (Preview 3): API dedicat valorilor care se inițializează doar la prima accesare și rămân imutabile ulterior[cite: 1].

  • Vector API (Incubator 12): Permite exprimarea calculelor vectoriale pe care JVM le poate compila direct în instrucțiuni CPU de tip SIMD pe hardware-ul compatibil[cite: 1].

Suport și disponibilitate

Oracle va oferi actualizări pentru JDK 27 până în martie 2027, dată la care este programată lansarea următoarei versiuni, Java 28[cite: 1].

Sursă: Linuxiac - Java 27 Released with G1 as the Default Garbage Collector[cite: 1]

Comentarii

Postări populare de pe acest blog

Linux Mint 27 „Adrien” sosește de Crăciun: Schimbare istorică prin renunțarea la versiunile intermediare (point releases)

⏱️ Test de laborator Neowin: Linux spulberă Windows 11 în sarcinile zilnice și managementul resurselor!

PhotoSuite: O alternativă gratuită și open-source la Photoshop, cu suport nativ pentru fișiere PSD