--- a/hotspot/src/share/vm/services/diagnosticCommand.hpp Wed Jul 29 22:59:03 2015 -0400
+++ b/hotspot/src/share/vm/services/diagnosticCommand.hpp Thu Jul 30 16:26:00 2015 +0300
@@ -241,6 +241,46 @@
virtual void execute(DCmdSource source, TRAPS);
};
+class HeapInfoDCmd : public DCmd {
+public:
+ HeapInfoDCmd(outputStream* output, bool heap) : DCmd(output, heap) { }
+ static const char* name() { return "GC.heap_info"; }
+ static const char* description() {
+ return "Provide generic Java heap information.";
+ }
+ static const char* impact() {
+ return "Medium";
+ }
+ static int num_arguments() { return 0; }
+ static const JavaPermission permission() {
+ JavaPermission p = {"java.lang.management.ManagementPermission",
+ "monitor", NULL};
+ return p;
+ }
+
+ virtual void execute(DCmdSource source, TRAPS);
+};
+
+class FinalizerInfoDCmd : public DCmd {
+public:
+ FinalizerInfoDCmd(outputStream* output, bool heap) : DCmd(output, heap) { }
+ static const char* name() { return "GC.finalizer_info"; }
+ static const char* description() {
+ return "Provide information about Java finalization queue.";
+ }
+ static const char* impact() {
+ return "Medium";
+ }
+ static int num_arguments() { return 0; }
+ static const JavaPermission permission() {
+ JavaPermission p = {"java.lang.management.ManagementPermission",
+ "monitor", NULL};
+ return p;
+ }
+
+ virtual void execute(DCmdSource source, TRAPS);
+};
+
#if INCLUDE_SERVICES // Heap dumping supported
// See also: dump_heap in attachListener.cpp
class HeapDumpDCmd : public DCmdWithParser {