[jboss-cvs] JBossAS SVN: r109274 - trunk/testsuite/src/main/org/jboss/test/classloader/leak/clstore.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Nov 11 12:50:30 EST 2010


Author: smarlow at redhat.com
Date: 2010-11-11 12:50:30 -0500 (Thu, 11 Nov 2010)
New Revision: 109274

Modified:
   trunk/testsuite/src/main/org/jboss/test/classloader/leak/clstore/ClassLoaderStore.java
Log:
JBAS-8613 handle running without jvmti

Modified: trunk/testsuite/src/main/org/jboss/test/classloader/leak/clstore/ClassLoaderStore.java
===================================================================
--- trunk/testsuite/src/main/org/jboss/test/classloader/leak/clstore/ClassLoaderStore.java	2010-11-11 17:45:41 UTC (rev 109273)
+++ trunk/testsuite/src/main/org/jboss/test/classloader/leak/clstore/ClassLoaderStore.java	2010-11-11 17:50:30 UTC (rev 109274)
@@ -176,14 +176,14 @@
       else
       {
          log.debug("JVMTI not active; using System.gc()");
-         System.gc();
+         forceFullGCAndFinalize(null);
          Thread.sleep(1000);
          
          if (weakReferenceOnLoader.get() != null)
-            fillMemory(weakReferenceOnLoader, leakAnalyzer);
+            fillMemory(weakReferenceOnLoader, null);
          
          if (weakReferenceOnLoader.get() != null)
-            fillMemory(weakReferenceOnLoader, leakAnalyzer);
+            fillMemory(weakReferenceOnLoader, null);
       }
       
       return (ClassLoader) weakReferenceOnLoader.get();
@@ -194,7 +194,19 @@
     */
    private void forceFullGCAndFinalize(LeakAnalyzer leakAnalyzer)
    {
-      leakAnalyzer.forceGC();
+      if(leakAnalyzer != null)
+      {
+         leakAnalyzer.forceGC();
+      }
+      else
+      {
+         // encourage a full gc
+         for(int looper =0; looper < 10; looper++)
+         {
+           System.gc();
+         }
+
+      }
       // give more hints for gc + finalizers to run
       for(int looper =0; looper < 10; looper++)
       {



More information about the jboss-cvs-commits mailing list