Egret社区

安卓微端内存问题

2020-7-8 10:14
3591
微端中,打开一个界面(加入舞台),然后关闭这个界面(移除舞台),
打开界面时,安卓studio中的内存中的graphics会增加,关闭这个界面时,占用内存并没有下降,
所以只要去打开界面,微端的内存占用一直上升,
然后有意思的是,把app切后台,内存中的graphics直线下降,能降好几百兆,
我是哪里错了么?我并没有写内存泄漏啊,界面上没有监听器啊,tween的,只是我单独拼的ui界面

分享到 :
0 人收藏

1 个回复

倒序浏览
mosquito133  登堂入室 | 2020-7-14 18:01:14
移除舞台,跟删除掉并不是一回事,移除舞台,他引用的对象仍然在,所以内存并不会降低。
怎么删除掉,把对其的引用置空,内存也不一定立即降低,会在解释器做GC的时候才降低。
可能GC过后,也未必如愿的回到初始状态,这是因为有的资源是通过RES.getRes获得的,在RES产生了引用,需要RES.destroyRes
你可能感到奇怪并没有显式的调用GetRes,skin文件做了这件事,那我如何知道skin文件用了哪些RES,才好做destroyRes呢,很遗憾,基本做不到,做到了也不建议去destroyRes,因为这个RES可能用在了其他地方。
那该怎么办?
视而不见即可,对于一般的游戏不会耗尽内存的,就算是耗尽了就reload一下好了。除非你做大型的MMRPG,那需要从底层做起。
为什么切后台,graph直线下降——这是释放了程序的所有显存,webgl每显示一张图片,需要额外分配一块显存跟图片对应。



您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|京网文[2014]0791-191号|京ICP证150115号|Egret社区 ( 京ICP备14025619号 )

Powered by Discuz! X3.4 © 2001-2019 Comsenz Inc.

返回顶部