< prev index next >

test/hotspot/jtreg/runtime/cds/appcds/javaldr/GCDuringDump.java

Print this page

@@ -1,7 +1,7 @@
 /*
- * Copyright (c) 2017, 2019, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2017, 2020, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
  * under the terms of the GNU General Public License version 2 only, as
  * published by the Free Software Foundation.

@@ -39,10 +39,11 @@
     public static String appClasses[] = {
         Hello.class.getName(),
     };
     public static String agentClasses[] = {
         GCDuringDumpTransformer.class.getName(),
+        GCDuringDumpTransformer.MyCleaner.class.getName(),
     };
 
     public static void main(String[] args) throws Throwable {
         String agentJar =
             ClassFileInstaller.writeJar("GCDuringDumpTransformer.jar",

@@ -53,19 +54,22 @@
             ClassFileInstaller.writeJar("GCDuringDumpApp.jar", appClasses);
 
         String gcLog = Boolean.getBoolean("test.cds.verbose.gc") ?
             "-Xlog:gc*=info,gc+region=trace,gc+alloc+region=debug" : "-showversion";
 
-        for (int i=0; i<2; i++) {
+        for (int i=0; i<3; i++) {
             // i = 0 -- run without agent = no extra GCs
             // i = 1 -- run with agent = cause extra GCs
+            // i = 2 -- run with agent = cause extra GCs + use java.lang.ref.Cleaner
 
             String extraArg = (i == 0) ? "-showversion" : "-javaagent:" + agentJar;
             String extraOption = (i == 0) ? "-showversion" : "-XX:+AllowArchivingWithJavaAgent";
+            String extraOption2 = (i != 2) ? "-showversion" : "-Dtest.with.cleaner=true";
 
             TestCommon.testDump(appJar, TestCommon.list(Hello.class.getName()),
-                                "-XX:+UnlockDiagnosticVMOptions", extraOption,
+                                "-XX:+UnlockDiagnosticVMOptions", extraOption, extraOption2,
+                                "-Xlog:exceptions=trace",
                                 extraArg, "-Xmx32m", gcLog);
 
             TestCommon.run(
                 "-cp", appJar,
                 "-Xmx32m",
< prev index next >