onsdag 16. desember 2009

Java 7 chapter 3: core

Modularization
JSR 277: JAM module system eller OSGi. Applying JSR 294 to the rt.jar, creating virtual machine “profiles”. The core has been reduced from 15 MB to 5 MB. There might be profiles for headless, rich apps, realtime ..

ClassLoader architecture
Modifications to avoid deadlocks in non-hierarchical (cyclic) topologies.

Close URLClassLoader
Often in use by application servers. When a new URLClassLoader is constructed, the old one can be garbage collected when there are no references to this object. Only then can files and directories under this CL be unlocked. Because of the nature of GC, it is unpredictable when this will happend. A close method will make this behavious more predictable.

Unicode 5.1
Standard for representing various characters, now supporting even more characters.

Concurrency/collection updates
166 is a package of different concurrency stuff. 166y is defining a fork/join-framework (Parallel Array). Operation on a collection of elements, like incrementing a number across an array.

New I/O APIs
A file system interface that supports bulk access to file attributes, change notification, tunnel to FS-specific APIs, service-provider interface for pluggable FS implementations.

Asynch I/O operation on both sockets and files. Socket level UDP stuff.

EEC
Approac to public-key cryptography. Now supported with a native java library.

1 kommentar:

  1. The "Modularization" section is confused, and gives incorrect information. JSR 277 and JAM have not been relevant since 2008. JSR 294 is not being "applied" to rt.jar; the Jigsaw module system is the mechanism by which rt.jar is being split up, see http://blogs.sun.com/alanb/entry/is_the_jdk_losing_its

    SvarSlett