58 SecurityManager sm = System.getSecurityManager();
59 if (sm != null) {
60 sm.checkPermission(new WhiteBoxPermission("getInstance"));
61 }
62 return instance;
63 }
64
65 static {
66 registerNatives();
67 }
68
69 // Get the maximum heap size supporting COOPs
70 public native long getCompressedOopsMaxHeapSize();
71 // Arguments
72 public native void printHeapSizes();
73
74 // Memory
75 public native long getObjectAddress(Object o);
76 public native int getHeapOopSize();
77 public native int getVMPageSize();
78 public native boolean isObjectInOldGen(Object o);
79 public native long getObjectSize(Object o);
80
81 // Runtime
82 // Make sure class name is in the correct format
83 public boolean isClassAlive(String name) {
84 return isClassAlive0(name.replace('.', '/'));
85 }
86 private native boolean isClassAlive0(String name);
87 public native boolean isMonitorInflated(Object obj);
88 public native void forceSafepoint();
89
90 // JVMTI
91 public native void addToBootstrapClassLoaderSearch(String segment);
92 public native void addToSystemClassLoaderSearch(String segment);
93
94 // G1
95 public native boolean g1InConcurrentMark();
96 public native boolean g1IsHumongous(Object o);
97 public native long g1NumFreeRegions();
|
58 SecurityManager sm = System.getSecurityManager();
59 if (sm != null) {
60 sm.checkPermission(new WhiteBoxPermission("getInstance"));
61 }
62 return instance;
63 }
64
65 static {
66 registerNatives();
67 }
68
69 // Get the maximum heap size supporting COOPs
70 public native long getCompressedOopsMaxHeapSize();
71 // Arguments
72 public native void printHeapSizes();
73
74 // Memory
75 public native long getObjectAddress(Object o);
76 public native int getHeapOopSize();
77 public native int getVMPageSize();
78 public native long getVMLargePageSize();
79 public native boolean isObjectInOldGen(Object o);
80 public native long getObjectSize(Object o);
81
82 // Runtime
83 // Make sure class name is in the correct format
84 public boolean isClassAlive(String name) {
85 return isClassAlive0(name.replace('.', '/'));
86 }
87 private native boolean isClassAlive0(String name);
88 public native boolean isMonitorInflated(Object obj);
89 public native void forceSafepoint();
90
91 // JVMTI
92 public native void addToBootstrapClassLoaderSearch(String segment);
93 public native void addToSystemClassLoaderSearch(String segment);
94
95 // G1
96 public native boolean g1InConcurrentMark();
97 public native boolean g1IsHumongous(Object o);
98 public native long g1NumFreeRegions();
|