SF 1701995 another attempt at memory managment <class_name>.PutInROT system property added.

This commit is contained in:
clay_shooter
2007-05-17 03:40:22 +00:00
parent 90eb8609a3
commit 117799dd86
7 changed files with 168 additions and 31 deletions

View File

@@ -49,15 +49,45 @@ This library supports several different :
even though the <a href="JacobComLifetime.html">JacobComLifetime.html</a> document
says this is a bad idea.
<p>
<p>
This value is cached at startup and cannot be changed on-the-fly via <code>System.setProperty();</code>
<p>
The default value is <strong>false</strong>
<p>
Example: -Dcom.jacob.autogc=false
Example: <code>-Dcom.jacob.autogc=false</code>
<h3>&ltclass_name&gt.PutInROT</h3>
Lets a program specify that instances of certain classes are to not be inserted
into the ROT. This experimental (1.13) feature provides a mechanism for freeing
VariantViaEvent objects that are created in Event threads. There is normally no
way to free those objects because the thread terminates outside of any normaly MTA/STA
Startup/Teardown code. Each event occures in a new thread and creates a new ROT entry
so they grow without bounds.
<p>
This option may cause VM crashes in certain situations where windows memory is freed
outside of the thread it was created in but emperical evidence shows there are
situations where this great reduces the long running memory footprint of applications
that process a lot of events. <em>This function is still experimental</em>.
The functionality of this overlaps the experimental <code>com.jacob.autogc</code> introduced
in 1.9.
See the ROT.java test program for an example of the effects of this option.
<p>
This value is checked every time and can be changed on-the-fly via <code>System.setProperty();</code>
<p>
Example: <code>System.setProperty("com.jacob.com.VariantViaVariant.PutInROT","false");</code>
<BR>
Example: <code>-Dcom.jacob.com.VariantViaVariant.PutInROT=false</code>
<h3>com.jacob.debug</h3>
Determines if debug output is enabled to standard out.
Determines if debug output is enabled to standard out.
<p>
This value is cached at startup and cannot be changed on-the-fly via <code>System.setProperty();</code>
<p>
The default value is <strong>false</strong>
<p>
Example: -Dcom.jacob.debug=false
Example: <code>-Dcom.jacob.debug=false</code>
<h3>-XCheck:jni</h3>
This turns on additional JVM checking for JNI issues. This is