< prev index next >

test/hotspot/jtreg/serviceability/sa/TestJhsdbJstackLock.java

Print this page




  48         if (!Platform.shouldSAAttach()) {
  49             System.out.println("SA attach not expected to work - test skipped.");
  50             return;
  51         }
  52 
  53         try {
  54             List<String> vmArgs = new ArrayList<String>(Utils.getVmOptions());
  55 
  56             app = new LingeredAppWithLock();
  57             LingeredApp.startApp(vmArgs, app);
  58             System.out.println ("Started LingeredApp with pid " + app.getPid());
  59 
  60             JDKToolLauncher launcher = JDKToolLauncher.createUsingTestJDK("jhsdb");
  61             launcher.addToolArg("jstack");
  62             launcher.addToolArg("--pid");
  63             launcher.addToolArg(Long.toString(app.getPid()));
  64 
  65             ProcessBuilder pb = new ProcessBuilder();
  66             pb.command(launcher.getCommand());
  67             Process jhsdb = pb.start();

  68 
  69             jhsdb.waitFor();
  70 
  71             OutputAnalyzer out = new OutputAnalyzer(jhsdb);
  72             System.out.println(out.getStdout());
  73             System.err.println(out.getStderr());
  74 
  75             out.shouldMatch("^\\s+- locked <0x[0-9a-f]+> \\(a java\\.lang\\.Class for LingeredAppWithLock\\)$");
  76             out.shouldMatch("^\\s+- waiting to lock <0x[0-9a-f]+> \\(a java\\.lang\\.Class for LingeredAppWithLock\\)$");
  77             out.shouldMatch("^\\s+- locked <0x[0-9a-f]+> \\(a java\\.lang\\.Thread\\)$");
  78             out.shouldMatch("^\\s+- locked <0x[0-9a-f]+> \\(a java\\.lang\\.Class for int\\)$");
  79             out.stderrShouldBeEmpty();
  80 
  81             System.out.println("Test Completed");
  82         } finally {
  83             LingeredApp.stopApp(app);
  84         }
  85     }
  86 }


  48         if (!Platform.shouldSAAttach()) {
  49             System.out.println("SA attach not expected to work - test skipped.");
  50             return;
  51         }
  52 
  53         try {
  54             List<String> vmArgs = new ArrayList<String>(Utils.getVmOptions());
  55 
  56             app = new LingeredAppWithLock();
  57             LingeredApp.startApp(vmArgs, app);
  58             System.out.println ("Started LingeredApp with pid " + app.getPid());
  59 
  60             JDKToolLauncher launcher = JDKToolLauncher.createUsingTestJDK("jhsdb");
  61             launcher.addToolArg("jstack");
  62             launcher.addToolArg("--pid");
  63             launcher.addToolArg(Long.toString(app.getPid()));
  64 
  65             ProcessBuilder pb = new ProcessBuilder();
  66             pb.command(launcher.getCommand());
  67             Process jhsdb = pb.start();
  68             OutputAnalyzer out = new OutputAnalyzer(jhsdb);
  69 
  70             jhsdb.waitFor();
  71 

  72             System.out.println(out.getStdout());
  73             System.err.println(out.getStderr());
  74 
  75             out.shouldMatch("^\\s+- locked <0x[0-9a-f]+> \\(a java\\.lang\\.Class for LingeredAppWithLock\\)$");
  76             out.shouldMatch("^\\s+- waiting to lock <0x[0-9a-f]+> \\(a java\\.lang\\.Class for LingeredAppWithLock\\)$");
  77             out.shouldMatch("^\\s+- locked <0x[0-9a-f]+> \\(a java\\.lang\\.Thread\\)$");
  78             out.shouldMatch("^\\s+- locked <0x[0-9a-f]+> \\(a java\\.lang\\.Class for int\\)$");
  79             out.stderrShouldBeEmpty();
  80 
  81             System.out.println("Test Completed");
  82         } finally {
  83             LingeredApp.stopApp(app);
  84         }
  85     }
  86 }
< prev index next >