gpt4 book ai didi

java - 在使用 Java 开始游戏之前等待 GC 完成?

转载 作者:行者123 更新时间:2023-11-29 08:09:49 25 4
gpt4 key购买 nike

我正在制作一款快节奏的实时 Android 游戏,一切运行良好,但游戏开始的前几秒非常缓慢,因为垃圾收集器在加载后进行清理线。当然,玩家可以等待几秒钟(比如 10 秒以上),因为完成后它开始运行得非常流畅,但这看起来真的很难看,感觉游戏有问题。

有没有一种方法(或技术)可以判断何时开始游戏是安全的,这样垃圾收集器就不会在实时部分开始时就开始疯狂?在不破坏东西的情况下,大脂肪加载线程不能减少很多。

最佳答案

这似乎是 System.gc() 可能有所帮助的情况。它告诉系统现在是收集垃圾的好时机。根据文档,

When control returns from the method call, the Java Virtual Machine has made a best effort to reclaim space from all discarded objects.

不过,文档还说,该方法“建议”收集对象——也就是说,不能保证它会有所帮助,特别是如果您仍然保留了一些引用。如果它确实有效,它只会收集运行代码(包括运行时)根本无法访问的对象。 (例如,该加载程序线程在完成运行之前不符合收集条件,并且您的代码不再引用它。)

关于java - 在使用 Java 开始游戏之前等待 GC 完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8751749/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com