Notes: JamVM 1.3.2 is a minor feature/bug-fix release.
Changes: A summary of changes since 1.3.1: - Updated to be compatible with Classpath-0.17 and Classpath from CVS (as of 28th July). - Shutdown hooks are now ran on VM termination, either normally, or via user interruption (i.e ctrl-C). - Revised GC allocation failure policy - Using a simple heuristic the GC attempts to maintain at least 25% heap free. If it fails the heap is expanded, regardless of whether the allocation request could be satisfied. This reduces frequent garbage collection cycles when GC returns only a limited amount of memory. - Revised Object finalization - during GC a thread could deadlock waiting for finalization. This occurred when a finalizer (running in the finalizer thread) attempted to grab a lock the thread is holding. - a minor bug fix where finalized objects waiting for the finalizer to be ran could keep alive other finalized objects (if it had the only reference to it). - a minor bug fix where objects waiting for finalization could be lost (i.e. finalize() method not called). This only happened when >1000 objects were outstanding. - VMRuntime.runFinalization() implemented. This enables a thread to force finalization. - In certain circumstances a class loader would be unmarked during GC, enabling it to be collected. This resulted in a SEGV. - JNI FindClass now uses the current class loader, not the first non-null on the stack. - VMClass.getModifiers() now handles inner class attributes. - Fix to enable build directory to be different to source directory (this was broken in 1.3.0).
Copyright © 2009 Geeknet, Inc. All rights reserved. Terms of Use