
GC
文章平均质量分 83
不秃头de程序猿
逢山打洞,遇水架桥。
展开
-
为什么Android应用程序会滞后?
很多人在刚接触这个行业的时候或者是在遇到瓶颈期的时候,总会遇到一些问题,比如学了一段时间感觉没有方向感,不知道该从那里入手去学习,需要一份小编整理出来的学习资料的。在这里,重要的一点是 GC 运行的时间,您的应用程序不会在该时间运行。因此,该应用程序似乎落后了。基本上,Android App 运行时,它会根据你的代码分配很多对象,当这些对象不再被引用时,系统会在有内存压力时调用 GC 来释放这些对象。因此,如果 GC 运行时间更长,应用程序将无法更新 UI,并且会跳过几帧,因此看起来应用程序处于滞后状态。原创 2022-09-20 09:55:35 · 314 阅读 · 0 评论 -
【Android GC】垃圾回收
垃圾回收一般需要暂停所有线程的执行,叫stop-the-world。GC优化基本就是减少暂停次数和暂停时间。JVM的内存大致分为5个区,程序计数器,虚拟机栈,本地方法栈,堆,方法区。顾名思义跟PC寄存器作用类似,每个线程独立存在,生命周期与线程一致。指示当前执行的方法,内存很小,忽略不计,没有垃圾。栈空间,每个线程独立存在,保存方法参数或者方法内对象的引用。生命周期结束,比如方法执行完毕后内存会被释放,所以不需要垃圾管理。与虚拟机栈类似,对应native方法。不需要垃圾管理。对象的实际存储区域,比如在方法内原创 2022-07-06 15:02:52 · 442 阅读 · 0 评论