< prev index next >
src/java.base/share/classes/java/nio/Bits.java
Print this page
rev 51055 : 8207235: ManagementFactory.getPlatformMXBeans(BufferPoolMXBean.class) throws NPE
Reviewed-by: alanb
*** 205,223 ****
long reservedMem = RESERVED_MEMORY.addAndGet(-size);
long totalCap = TOTAL_CAPACITY.addAndGet(-cap);
assert cnt >= 0 && reservedMem >= 0 && totalCap >= 0;
}
! // -- Monitoring of direct buffer usage --
!
! static {
! // setup access to this package in SharedSecrets
! SharedSecrets.setJavaNioAccess(
! new JavaNioAccess() {
! @Override
! public JavaNioAccess.BufferPool getDirectBufferPool() {
! return new JavaNioAccess.BufferPool() {
@Override
public String getName() {
return "direct";
}
@Override
--- 205,215 ----
long reservedMem = RESERVED_MEMORY.addAndGet(-size);
long totalCap = TOTAL_CAPACITY.addAndGet(-cap);
assert cnt >= 0 && reservedMem >= 0 && totalCap >= 0;
}
! static final JavaNioAccess.BufferPool BUFFER_POOL = new JavaNioAccess.BufferPool() {
@Override
public String getName() {
return "direct";
}
@Override
*** 231,251 ****
@Override
public long getMemoryUsed() {
return Bits.RESERVED_MEMORY.get();
}
};
- }
- @Override
- public ByteBuffer newDirectByteBuffer(long addr, int cap, Object ob) {
- return new DirectByteBuffer(addr, cap, ob);
- }
- @Override
- public void truncate(Buffer buf) {
- buf.truncate();
- }
- });
- }
// These numbers represent the point at which we have empirically
// determined that the average cost of a JNI call exceeds the expense
// of an element by element copy. These numbers may change over time.
static final int JNI_COPY_TO_ARRAY_THRESHOLD = 6;
--- 223,232 ----
< prev index next >