Java 10 update summary, new compiler takes all mainstream programming languages

Earlier Oracle released Java 10, the first version of Java after Oracle changed its release strategy, Oracle has now decided to release a new Java version every six months, the cycle is shortened, but not that we have to learn more It means that after shortening the development cycle, it will help to fix bugs faster and release new functions in advance. Because the time is short, there are not many new functions. This update mainly includes: local variable type inference, G1 parallel full garbage collection, and a beta version of the Java-Based JIT compiler. The update details are as follows:

Local variable type inference: Based on the type inference of Java 8 lambda expressions, Java 10 can now infer the type of local variables.

G1 Parallel Full Garbage Collection: Increased worst-case latency level when G1 is fully garbage collected.

Application class data sharing: Optimize startup speed and reduce overhead by extending the existing Class-Data Sharing (CDS) functionality to allow classes to be stored in a shared archive.

Beta Java-Based JIT Compiler: The Java-Based JIT compiler Graal is enabled on Linux 64-bit environments. Graal is a general-purpose virtual machine that can run applications written in JavaScript, Python, Ruby, R, and the JVM languages ​​Java, Scala, Cloujure, Kotlin programming languages, and programs written in LLVM-based programming languages, such as C and C++, and can provide faster speed.

Garbage collection interface: In order to better separate the source code of different garbage collectors, a new concise garbage collector interface is introduced. It can make the internal garbage collection code of HotSpot more modular, the new garbage collector implementation will not affect the existing garbage collector code, and it can queue the implementation of a garbage collector.

Thread-local handshake: The global VM restore point is no longer restored when executing a thread callback function, making it possible to shut down a single thread with less overhead.

Added Unicode Language Tag Extensions: Enhanced java.util.Locale and its related APIs to implement BCP 47 Unicode extensions.

Allows heap allocation on other memory devices: for example NV-DIMM memory devices can be used.

Root Certificates: A default set of root certificate authorities (CAs) are provided.

Time-Based Release Versions: Revised version string patterns for the Java SE platform and JDK.

Merge the JDK forest into a single repository: Unify the scattered JDK repositories into one repository, simplifying the JDK development process.

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=325344912&siteId=291194637