SF 1701995 another attempt at memory managment <class_name>.PutInROT system property added.
This commit is contained in:
@@ -5,8 +5,10 @@
|
||||
<h3>What's New</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<b>Now compiles with with Visual Studio 2005 (M1)</b>
|
||||
<b>Changed milestone release naming convetion from "pre..." to "M..."</b>
|
||||
Now compiles with with Visual Studio 2005 (M1)
|
||||
</li>
|
||||
<li>
|
||||
Changed milestone release naming convetion from "pre..." to "M..."
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@@ -26,6 +28,13 @@
|
||||
<td width="13%" valign="top">1709841 </td>
|
||||
<td width="87%" valign="top">(M1) Compiles with Visual Studio 2005</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td width="13%" valign="top">1701995 </td>
|
||||
<td width="87%" valign="top">(M2) Added option to exclude classes from ROT to
|
||||
try and manage memory in heavy event callback programs. Feature is 100%
|
||||
backwards compatible by default.
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<tr>
|
||||
<td width="13%" valign="top"> </td>
|
||||
|
||||
@@ -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><class_name>.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
|
||||
|
||||
Reference in New Issue
Block a user