diff options
Diffstat (limited to 'vespajlib/src/main/java/com/yahoo/nativec/MallInfo2.java')
-rw-r--r-- | vespajlib/src/main/java/com/yahoo/nativec/MallInfo2.java | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/nativec/MallInfo2.java b/vespajlib/src/main/java/com/yahoo/nativec/MallInfo2.java index 1ae3bc590e2..ea735046843 100644 --- a/vespajlib/src/main/java/com/yahoo/nativec/MallInfo2.java +++ b/vespajlib/src/main/java/com/yahoo/nativec/MallInfo2.java @@ -2,7 +2,12 @@ package com.yahoo.nativec; import com.sun.jna.Structure; -public class MallInfo2 { +/** + * Gives access to the information provided by the C library mallinfo2() function. + * + * @author baldersheim + */ +public class MallInfo2 extends NativeHeap { private final static Throwable initException = NativeC.loadLibrary(MallInfo2.class); public static Throwable init() { return initException; @@ -23,8 +28,24 @@ public class MallInfo2 { public long keepcost; /* Top-most, releasable space (bytes) */ } private static native MallInfo2Struct.ByValue mallinfo2(); + private final MallInfo2Struct mallinfo; + public MallInfo2() { mallinfo = mallinfo2(); } - private final MallInfo2Struct mallinfo; + + @Override + public long usedSize() { + return mallinfo.uordblks; + } + + @Override + public long totalSize() { + return mallinfo.arena; + } + + @Override + public long availableSize() { + return mallinfo.fordblks; + } } |