从品牌网站建设到网络营销策划,从策略到执行的一站式服务
这篇文章主要讲解了“java的垃圾回收机制介绍”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“java的垃圾回收机制介绍”吧!
成都创新互联公司长期为1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为湖州企业提供专业的成都网站建设、网站制作,湖州网站改版等技术服务。拥有10多年丰富建站经验和众多成功案例,为您定制开发。了解了到了绝大部分的对象是分配在堆上面的,我们在编码的时候并没有显示的指明哪些对象需要回收,但是程序在运行的过程中是会一直创建对象的,之所以没有内存溢出是因为我们的虚拟机帮我我们自动进行了垃圾回收,保证程序运行的时候有足够的空间来分配我们创建的对象。
JVM被分为五大内存区域,其中程序计数器、虚拟机栈,本地方法栈是线程私有的,内存随着线程的销毁而退出。堆和方法区是动态分配的,由于方法区的垃圾收集收效甚微,所以本章所说的垃圾回收主要指的是堆内存的垃圾回收。
什么样的对象会被回收呢?我们想象下在生活中,什么样的东西会被我们扔进垃圾桶呢,是不是已经不再使用的东西或者说是没有任何利用价值的东西,在java中也是一样的,就是不会再使用到的对象。那么在java中,怎么判断这个对象是不是不会再被使用呢?显然,这似乎要比现实生活中判断哪些东西是垃圾要复杂许多。
前面说到,我们需要知道哪些对象是需要被回收的,那么怎么判断这个对象是否需要回收呢?
引用计数法。
创建对象的时候,给对象添加一个引用计数器,每当有一个地方引用的时候,就给计数器加1,当引用失效时,就给计数器减1,当引用计数器为0的时候,说明这个对象不会再被使用。这种方法被称为引用计数法。引用计数法的逻辑比较简单,效率高,但是却无法解决对象和对象之间的循环引用的问题。
可达性算法分析
可达性分析算法的基本思想是通过被称为GCRoots的起始点向下搜索,搜索走过的链路被称为引用链,如果没有任何一条链路到达这个对象,那么这个对象就不会再被使用,就可以将其回收。
感谢各位的阅读,以上就是“java的垃圾回收机制介绍”的内容了,经过本文的学习后,相信大家对java的垃圾回收机制介绍这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联网站建设公司,,小编将为大家推送更多相关知识点的文章,欢迎关注!
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图