diff options
Diffstat (limited to 'vespajlib/src/main/java/com/yahoo/nativec/MallInfo.java')
-rw-r--r-- | vespajlib/src/main/java/com/yahoo/nativec/MallInfo.java | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/nativec/MallInfo.java b/vespajlib/src/main/java/com/yahoo/nativec/MallInfo.java new file mode 100644 index 00000000000..a4f5486ccf1 --- /dev/null +++ b/vespajlib/src/main/java/com/yahoo/nativec/MallInfo.java @@ -0,0 +1,30 @@ +package com.yahoo.nativec; + +import com.sun.jna.Structure; + +public class MallInfo { + private final static Throwable initException = NativeC.loadLibrary(MallInfo.class); + public static Throwable init() { + return initException; + } + + @Structure.FieldOrder({"arena", "ordblks", "smblks", "hblks", "hblkhd", "usmblks", "fsmblks", "uordblks", "fordblks", "keepcost"}) + public static class MallInfoStruct extends Structure { + public static class ByValue extends MallInfoStruct implements Structure.ByValue { } + public int arena; /* Non-mmapped space allocated (bytes) */ + public int ordblks; /* Number of free chunks */ + public int smblks; /* Number of free fastbin blocks */ + public int hblks; /* Number of mmapped regions */ + public int hblkhd; /* Space allocated in mmapped regions (bytes) */ + public int usmblks; /* See below */ + public int fsmblks; /* Space in freed fastbin blocks (bytes) */ + public int uordblks; /* Total allocated space (bytes) */ + public int fordblks; /* Total free space (bytes) */ + public int keepcost; /* Top-most, releasable space (bytes) */ + } + private static native MallInfoStruct.ByValue mallinfo(); + public MallInfo() { + mallinfo = mallinfo(); + } + private final MallInfoStruct mallinfo; +} |