379 public long getMethodData(Executable method) {
380 Objects.requireNonNull(method);
381 return getMethodData0(method);
382 }
383 public native Object[] getCodeBlob(long addr);
384
385 private native void clearInlineCaches0(boolean preserve_static_stubs);
386 public void clearInlineCaches() {
387 clearInlineCaches0(false);
388 }
389 public void clearInlineCaches(boolean preserve_static_stubs) {
390 clearInlineCaches0(preserve_static_stubs);
391 }
392
393 // Intered strings
394 public native boolean isInStringTable(String str);
395
396 // Memory
397 public native void readReservedMemory();
398 public native long allocateMetaspace(ClassLoader classLoader, long size);
399 public native void freeMetaspace(ClassLoader classLoader, long addr, long size);
400 public native long incMetaspaceCapacityUntilGC(long increment);
401 public native long metaspaceCapacityUntilGC();
402 public native long metaspaceReserveAlignment();
403
404 // Don't use these methods directly
405 // Use sun.hotspot.gc.GC class instead.
406 public native boolean isGCSupported(int name);
407 public native boolean isGCSelected(int name);
408 public native boolean isGCSelectedErgonomically();
409
410 // Force Young GC
411 public native void youngGC();
412
413 // Force Full GC
414 public native void fullGC();
415
416 // Returns true if the current GC supports concurrent collection control.
417 public native boolean supportsConcurrentGCBreakpoints();
418
419 private void checkConcurrentGCBreakpointsSupported() {
420 if (!supportsConcurrentGCBreakpoints()) {
421 throw new UnsupportedOperationException("Concurrent GC breakpoints not supported");
422 }
|
379 public long getMethodData(Executable method) {
380 Objects.requireNonNull(method);
381 return getMethodData0(method);
382 }
383 public native Object[] getCodeBlob(long addr);
384
385 private native void clearInlineCaches0(boolean preserve_static_stubs);
386 public void clearInlineCaches() {
387 clearInlineCaches0(false);
388 }
389 public void clearInlineCaches(boolean preserve_static_stubs) {
390 clearInlineCaches0(preserve_static_stubs);
391 }
392
393 // Intered strings
394 public native boolean isInStringTable(String str);
395
396 // Memory
397 public native void readReservedMemory();
398 public native long allocateMetaspace(ClassLoader classLoader, long size);
399 public native long incMetaspaceCapacityUntilGC(long increment);
400 public native long metaspaceCapacityUntilGC();
401 public native long metaspaceReserveAlignment();
402
403 // Metaspace Arena Tests
404 public native long createMetaspaceTestContext(long commit_limit, long reserve_limit);
405 public native void destroyMetaspaceTestContext(long context);
406 public native void purgeMetaspaceTestContext(long context);
407 public native void printMetaspaceTestContext(long context);
408 public native long getTotalCommittedWordsInMetaspaceTestContext(long context);
409 public native long getTotalUsedWordsInMetaspaceTestContext(long context);
410 public native long createArenaInTestContext(long context, boolean is_micro);
411 public native void destroyMetaspaceTestArena(long arena);
412 public native long allocateFromMetaspaceTestArena(long arena, long word_size);
413 public native void deallocateToMetaspaceTestArena(long arena, long p, long word_size);
414
415 public native long maxMetaspaceAllocationSize();
416
417 // Don't use these methods directly
418 // Use sun.hotspot.gc.GC class instead.
419 public native boolean isGCSupported(int name);
420 public native boolean isGCSelected(int name);
421 public native boolean isGCSelectedErgonomically();
422
423 // Force Young GC
424 public native void youngGC();
425
426 // Force Full GC
427 public native void fullGC();
428
429 // Returns true if the current GC supports concurrent collection control.
430 public native boolean supportsConcurrentGCBreakpoints();
431
432 private void checkConcurrentGCBreakpointsSupported() {
433 if (!supportsConcurrentGCBreakpoints()) {
434 throw new UnsupportedOperationException("Concurrent GC breakpoints not supported");
435 }
|