ServerStatsMemoryCommand class
Пакет: com.hypixel.hytale.server.core.command.commands.debug.server
Файл: com/hypixel/hytale/server/core/command/commands/debug/server/ServerStatsMemoryCommand.java
extends: CommandBase
Поля (1)
| Модификаторы | Тип | Имя |
|---|---|---|
|
MemoryMXBean |
var4 |
Методы (1)
| Модификаторы | Возврат | Сигнатура |
|---|---|---|
abstract |
|
super super("memory", "server.commands.server.stats.memory.desc") |
Исходный код
Показать/скрыть
class="kw">package com.hypixel.hytale.server.core.command.commands.debug.server;
class="kw">import com.hypixel.hytale.common.util.FormatUtil;
class="kw">import com.hypixel.hytale.server.core.Message;
class="kw">import com.hypixel.hytale.server.core.command.system.CommandContext;
class="kw">import com.hypixel.hytale.server.core.command.system.basecommands.CommandBase;
class="kw">import com.sun.management.OperatingSystemMXBean;
class="kw">import java.lang.management.ManagementFactory;
class="kw">import java.lang.management.MemoryMXBean;
class="kw">import java.lang.management.MemoryUsage;
class="kw">import javax.annotation.Nonnull;
class="kw">public class ServerStatsMemoryCommand class="kw">extends CommandBase {
@Nonnull
class="kw">private class="kw">static class="kw">final Message MESSAGE_COMMANDS_SERVER_STATS_FULL_INFO_UNAVAILABLE = Message.translation("server.commands.server.stats.fullInfoUnavailable");
class="kw">public ServerStatsMemoryCommand() {
super("memory", "server.commands.server.stats.memory.desc");
this.addAliases("mem");
}
@Override
class="kw">protected void executeSync(@Nonnull CommandContext var1) {
if (ManagementFactory.getOperatingSystemMXBean() class="kw">instanceof OperatingSystemMXBean var3) {
var1.sendMessage(
Message.translation("server.commands.server.stats.memory.fullUsageInfo")
.param("totalPhysicalMemory", FormatUtil.bytesToString(var3.getTotalPhysicalMemorySize()))
.param("freePhysicalMemory", FormatUtil.bytesToString(var3.getFreePhysicalMemorySize()))
.param("totalSwapMemory", FormatUtil.bytesToString(var3.getTotalSwapSpaceSize()))
.param("freeSwapMemory", FormatUtil.bytesToString(var3.getFreeSwapSpaceSize()))
);
} else {
var1.sendMessage(MESSAGE_COMMANDS_SERVER_STATS_FULL_INFO_UNAVAILABLE);
}
MemoryMXBean var4 = ManagementFactory.getMemoryMXBean();
var1.sendMessage(
Message.translation("server.commands.server.stats.memory.usageInfo")
.param("heapMemoryUsage", formatMemoryUsage(var4.getHeapMemoryUsage()))
.param("nonHeapMemoryUsage", formatMemoryUsage(var4.getNonHeapMemoryUsage()))
.param("objectsPendingFinalizationCount", var4.getObjectPendingFinalizationCount())
);
}
@Nonnull
class="kw">private class="kw">static Message formatMemoryUsage(@Nonnull MemoryUsage var0) {
class="kw">return Message.translation("server.commands.server.stats.memory.usage")
.param("init", FormatUtil.bytesToString(var0.getInit()))
.param("used", FormatUtil.bytesToString(var0.getUsed()))
.param("committed", FormatUtil.bytesToString(var0.getCommitted()))
.param("max", FormatUtil.bytesToString(var0.getMax()))
.param("free", FormatUtil.bytesToString(var0.getMax() - var0.getCommitted()));
}
}