aboutsummaryrefslogtreecommitdiffstats
path: root/vespajlib/src/main/java/com/yahoo/nativec/NativeHeap.java
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2022-04-27 15:51:09 +0200
committerHenning Baldersheim <balder@yahoo-inc.com>2022-04-27 15:51:09 +0200
commit2b0994346361e2e292dc390abd21129ba527f39f (patch)
tree922d718015f270b8820d0315bc2f296ac8256061 /vespajlib/src/main/java/com/yahoo/nativec/NativeHeap.java
parenta69561e12789d506c3b45f81ffda4baae05b3965 (diff)
Report metrics for the size of the native heap.
Diffstat (limited to 'vespajlib/src/main/java/com/yahoo/nativec/NativeHeap.java')
-rw-r--r--vespajlib/src/main/java/com/yahoo/nativec/NativeHeap.java19
1 files changed, 19 insertions, 0 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/nativec/NativeHeap.java b/vespajlib/src/main/java/com/yahoo/nativec/NativeHeap.java
new file mode 100644
index 00000000000..929ebdd1737
--- /dev/null
+++ b/vespajlib/src/main/java/com/yahoo/nativec/NativeHeap.java
@@ -0,0 +1,19 @@
+package com.yahoo.nativec;
+
+import com.sun.jna.Platform;
+
+public class NativeHeap {
+ public long usedSize() { return 0; }
+ public long totalSize() { return 0; }
+ public long availableSize() { return 0; }
+ public static NativeHeap sample() {
+ if (Platform.isLinux()) {
+ GLibcVersion version = new GLibcVersion();
+ if ((version.major() >= 3) || ((version.major() == 2) && (version.minor() >= 33))) {
+ return new MallInfo2();
+ }
+ return new MallInfo();
+ }
+ return new NativeHeap();
+ }
+}