欢迎光临散文网 会员登陆 & 注册

GC.markDependencies

2021-02-25 10:37 作者:unity_某某师_高锦锦  | 我要投稿

当前项目出现GC.markDependencies导致的卡顿。

GC.markDependencies

解决方案:删除Resources.UnloadUnusedAssets。一些低端手机可能会导致GCC收集多次,CPU次数的成本。您可以使用Resources.UnloadAssets(“”); 手动。这个API不能导致GC。

后期可以通过定时垃圾回收。

其他建议:

1.尝试在应用程序开始时分配(LoadResource和实例化)尽可能多的资源。如果所需的内存不是太多,您可以简单地实例化所需的所有资源,并根据需要禁用/启用它们。如果资源内存需求很大,这是无法实现的。

2.避免在游戏中调用实例化和销毁。创建一个对象池,当应用程序启动时在其中实例化一组资源。启用您需要的资源,禁用其他所有资源。将对象释放到池中,而不是销毁对象,这样就可以根据需要禁用和重新启用对象。

3.避免在游戏中调用Resources.UnloadUnusedAssets。这只会增加实例化新资源所需的时间,如果您之前已经释放了它。优化内存使用是很有用的,但是在固定的间隔或每次销毁对象时都调用它是没有意义的。



GC.markDependencies的评论 (共 条)

分享到微博请遵守国家法律