不再使用 OperatingSystemMXBean 中被弃用的方法 (#4459)
This commit is contained in:
@@ -20,13 +20,11 @@ package org.jackhuang.hmcl.util.platform.hardware;
|
|||||||
import org.jetbrains.annotations.Nullable;
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
import java.lang.management.ManagementFactory;
|
import java.lang.management.ManagementFactory;
|
||||||
import java.lang.management.OperatingSystemMXBean;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Glavo
|
* @author Glavo
|
||||||
*/
|
*/
|
||||||
@SuppressWarnings("ALL")
|
|
||||||
public class HardwareDetector {
|
public class HardwareDetector {
|
||||||
private static final boolean USE_FAST_FETCH = "true".equalsIgnoreCase(System.getProperty("hmcl.hardware.fastfetch", "true"));
|
private static final boolean USE_FAST_FETCH = "true".equalsIgnoreCase(System.getProperty("hmcl.hardware.fastfetch", "true"));
|
||||||
|
|
||||||
@@ -40,9 +38,8 @@ public class HardwareDetector {
|
|||||||
|
|
||||||
public long getTotalMemorySize() {
|
public long getTotalMemorySize() {
|
||||||
try {
|
try {
|
||||||
OperatingSystemMXBean bean = ManagementFactory.getOperatingSystemMXBean();
|
if (ManagementFactory.getOperatingSystemMXBean() instanceof com.sun.management.OperatingSystemMXBean bean) {
|
||||||
if (bean instanceof com.sun.management.OperatingSystemMXBean) {
|
return bean.getTotalMemorySize();
|
||||||
return ((com.sun.management.OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean()).getTotalPhysicalMemorySize();
|
|
||||||
}
|
}
|
||||||
} catch (NoClassDefFoundError ignored) {
|
} catch (NoClassDefFoundError ignored) {
|
||||||
}
|
}
|
||||||
@@ -52,9 +49,8 @@ public class HardwareDetector {
|
|||||||
|
|
||||||
public long getFreeMemorySize() {
|
public long getFreeMemorySize() {
|
||||||
try {
|
try {
|
||||||
OperatingSystemMXBean bean = ManagementFactory.getOperatingSystemMXBean();
|
if (ManagementFactory.getOperatingSystemMXBean() instanceof com.sun.management.OperatingSystemMXBean bean) {
|
||||||
if (bean instanceof com.sun.management.OperatingSystemMXBean) {
|
return bean.getFreeMemorySize();
|
||||||
return ((com.sun.management.OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean()).getFreePhysicalMemorySize();
|
|
||||||
}
|
}
|
||||||
} catch (NoClassDefFoundError ignored) {
|
} catch (NoClassDefFoundError ignored) {
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user