Skip to content

Commit ad09002

Browse files
committed
fix: 修复自动内存分配不生效的问题
1 parent 3ceff9c commit ad09002

File tree

1 file changed

+15
-4
lines changed

1 file changed

+15
-4
lines changed

FCL/src/main/java/com/tungsten/fcl/game/FCLGameRepository.java

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,14 @@
6262
import java.nio.file.Files;
6363
import java.nio.file.Path;
6464
import java.time.Instant;
65-
import java.util.*;
65+
import java.util.ArrayList;
66+
import java.util.Arrays;
67+
import java.util.Comparator;
68+
import java.util.HashMap;
69+
import java.util.HashSet;
70+
import java.util.List;
71+
import java.util.Map;
72+
import java.util.Set;
6673
import java.util.logging.Level;
6774
import java.util.stream.Stream;
6875

@@ -348,10 +355,10 @@ public LaunchOptions getLaunchOptions(String version, JavaVersion javaVersion, F
348355
.setJavaArguments(StringUtils.tokenize(vs.getJavaArgs()))
349356
.setMaxMemory((int) (getAllocatedMemory(
350357
vs.getMaxMemory() * 1024L * 1024L,
351-
MemoryUtils.getFreeDeviceMemory(FCLPath.CONTEXT),
358+
MemoryUtils.getFreeDeviceMemory(FCLPath.CONTEXT) * 1024L * 1024L,
352359
vs.isAutoMemory()
353360
) / 1024 / 1024))
354-
.setMinMemory(vs.getMinMemory())
361+
.setMinMemory(vs.getMaxMemory())
355362
.setUUid(vs.getUuid())
356363
.setWidth((int) (AndroidUtils.getScreenWidth(FCLApplication.getCurrentActivity()) * vs.getScaleFactor() / 100.0))
357364
.setHeight((int) (AndroidUtils.getScreenHeight(FCLApplication.getCurrentActivity()) * vs.getScaleFactor() / 100.0))
@@ -374,8 +381,12 @@ public LaunchOptions getLaunchOptions(String version, JavaVersion javaVersion, F
374381
}
375382
}
376383

377-
if (vs.isAutoMemory() && builder.getJavaArguments().stream().anyMatch(it -> it.startsWith("-Xmx")))
384+
if (vs.isAutoMemory() && builder.getJavaArguments().stream().anyMatch(it -> it.startsWith("-Xmx"))) {
378385
builder.setMaxMemory(null);
386+
builder.setMinMemory(null);
387+
}
388+
if (vs.isAutoMemory() && builder.getJavaArguments().stream().anyMatch(it -> it.startsWith("-Xms")))
389+
builder.setMinMemory(null);
379390

380391
return builder.create();
381392
}

0 commit comments

Comments
 (0)