关于垃圾回收的一些看法
2017-02-28 09:58
309 查看
垃圾回收:GC
最近正好看到一些关于GC的介绍,然后查阅了很多相关知识.所以现在总结一下GC吧
1.why?
为什么要有GC这么个东西,从读大学的时候,选课的时候有三门口摆在面前,C# C++ java
然后选择了Java 以至于在同一寝室内的室友学了C++ 天天抱怨要注意内存的问题, 而我学JAVA的一脸问号,什么内存,我怎么一点都没有在意? 后来才知道java内置了GC, 如果没有GC的话我们就要手动去处理内存了,
2.what?
什么是垃圾,什么又是GC, 我百度了一下:把分配到堆中那些不能通过程序引用的对象称为非活动对象,也就是死掉的对象,我们称为“垃圾”,那GC是什么, 联想街道上那些垃装载车的动作,找到垃圾,然后倒垃圾,把垃圾桶放回去. 很简单的动作,对于内存来说,那就是1找到垃圾2把位置腾出来可以在用.
3.how??
那怎么找到垃圾呢, 有三种,标记-清除法 ,引用计数法,复制算法
那常说的分代GC又是什么鬼? 分代分代, 就是分了年代, 有一些对象刚出生用完了就成垃圾了. 有一些呢,经过一次GC还存在, 那么这个对象就成长了一岁,话说回来这就像是割稻草一样.哈哈哈.
那那些GC算法都是怎么搞的,这里在次联想一下垃圾车,一般一个垃圾车都是负责一块区域的垃圾清理工作, 那垃圾车司机怎么走才能最早下班喝咖啡去呢?对于大小不一的垃圾桶,怎么用垃圾车上的器械去倒呢? 这都是GC的算法的东西吧.
最近正好看到一些关于GC的介绍,然后查阅了很多相关知识.所以现在总结一下GC吧
1.why?
为什么要有GC这么个东西,从读大学的时候,选课的时候有三门口摆在面前,C# C++ java
然后选择了Java 以至于在同一寝室内的室友学了C++ 天天抱怨要注意内存的问题, 而我学JAVA的一脸问号,什么内存,我怎么一点都没有在意? 后来才知道java内置了GC, 如果没有GC的话我们就要手动去处理内存了,
2.what?
什么是垃圾,什么又是GC, 我百度了一下:把分配到堆中那些不能通过程序引用的对象称为非活动对象,也就是死掉的对象,我们称为“垃圾”,那GC是什么, 联想街道上那些垃装载车的动作,找到垃圾,然后倒垃圾,把垃圾桶放回去. 很简单的动作,对于内存来说,那就是1找到垃圾2把位置腾出来可以在用.
3.how??
那怎么找到垃圾呢, 有三种,标记-清除法 ,引用计数法,复制算法
那常说的分代GC又是什么鬼? 分代分代, 就是分了年代, 有一些对象刚出生用完了就成垃圾了. 有一些呢,经过一次GC还存在, 那么这个对象就成长了一岁,话说回来这就像是割稻草一样.哈哈哈.
那那些GC算法都是怎么搞的,这里在次联想一下垃圾车,一般一个垃圾车都是负责一块区域的垃圾清理工作, 那垃圾车司机怎么走才能最早下班喝咖啡去呢?对于大小不一的垃圾桶,怎么用垃圾车上的器械去倒呢? 这都是GC的算法的东西吧.
相关文章推荐
- 关于lua和python的垃圾回收的看法
- 关于垃圾回收的一些基本原理及技术解析
- 关于垃圾回收的一些知识
- 关于垃圾回收的一些基本原理及技术解析
- web中关于垃圾回收的一些观点
- Java 关于垃圾回收的一些编程建议
- 【转载】Flex垃圾回收和性能优化的一些总结
- 关于设计模式的一些看法与思考
- [置顶] 关于CSDN2013博客之星的一些看法
- 关于程序的一些看法和简单建议
- 关于程序的一些看法和简单建议 (转)
- 关于dubbo的一些看法
- Natty Gur的BLOG中关于体系结构的一些看法
- 关于.net的垃圾回收和大对象处理_标记
- 关于body的onload调用ajax的一些看法
- 关于选择移动开发平台(android,ios,wp7)的一些看法
- 关于java虚拟机中的垃圾回收机制
- 关于软件工程的一些看法
- 垃圾回收的一些面试题
- 关于手机端游戏中的一些看法(顺便貂蝉教学)