429 class TouchedMethodsDCmd : public DCmdWithParser {
430 public:
431 TouchedMethodsDCmd(outputStream* output, bool heap);
432 static const char* name() {
433 return "VM.print_touched_methods";
434 }
435 static const char* description() {
436 return "Print all methods that have ever been touched during the lifetime of this JVM.";
437 }
438 static const char* impact() {
439 return "Medium: Depends on Java content.";
440 }
441 static int num_arguments();
442 virtual void execute(DCmdSource source, TRAPS);
443 };
444
445 // See also: thread_dump in attachListener.cpp
446 class ThreadDumpDCmd : public DCmdWithParser {
447 protected:
448 DCmdArgument<bool> _locks;
449 public:
450 ThreadDumpDCmd(outputStream* output, bool heap);
451 static const char* name() { return "Thread.print"; }
452 static const char* description() {
453 return "Print all threads with stacktraces.";
454 }
455 static const char* impact() {
456 return "Medium: Depends on the number of threads.";
457 }
458 static const JavaPermission permission() {
459 JavaPermission p = {"java.lang.management.ManagementPermission",
460 "monitor", NULL};
461 return p;
462 }
463 static int num_arguments();
464 virtual void execute(DCmdSource source, TRAPS);
465 };
466
467 // Enhanced JMX Agent support
468
|
429 class TouchedMethodsDCmd : public DCmdWithParser {
430 public:
431 TouchedMethodsDCmd(outputStream* output, bool heap);
432 static const char* name() {
433 return "VM.print_touched_methods";
434 }
435 static const char* description() {
436 return "Print all methods that have ever been touched during the lifetime of this JVM.";
437 }
438 static const char* impact() {
439 return "Medium: Depends on Java content.";
440 }
441 static int num_arguments();
442 virtual void execute(DCmdSource source, TRAPS);
443 };
444
445 // See also: thread_dump in attachListener.cpp
446 class ThreadDumpDCmd : public DCmdWithParser {
447 protected:
448 DCmdArgument<bool> _locks;
449 DCmdArgument<bool> _extended;
450 public:
451 ThreadDumpDCmd(outputStream* output, bool heap);
452 static const char* name() { return "Thread.print"; }
453 static const char* description() {
454 return "Print all threads with stacktraces.";
455 }
456 static const char* impact() {
457 return "Medium: Depends on the number of threads.";
458 }
459 static const JavaPermission permission() {
460 JavaPermission p = {"java.lang.management.ManagementPermission",
461 "monitor", NULL};
462 return p;
463 }
464 static int num_arguments();
465 virtual void execute(DCmdSource source, TRAPS);
466 };
467
468 // Enhanced JMX Agent support
469
|