Java 2 平台引入了 java.lang.ref 包,其中包括的类可以让您引用对象,而不将它们留在内存中。这些类还提供了与垃圾收集器(garbage collector)之间有限的交互。1.先“由强到弱”(只的是和垃圾回收器的关系)明确几个基本概念:strong references是那种你通常...
分类:
编程语言 时间:
2014-08-19 12:18:04
阅读次数:
178
【弱引用】 弱引用允许应用程序访问对象,同时也允许垃圾回收器收集相应的对象。如果不存在强引用,则弱引用的有限期只限于收集对象前的一个不确定的时间段。使用弱引用时,应用程序仍可对该对象进行强引用,这样做可防止该对象被收集。但始终存在这样的风险:垃圾回收器在重新建立强引用之前先处理该对象。 弱引用特.....
分类:
其他好文 时间:
2014-08-16 20:57:51
阅读次数:
195
Java中的SoftReference即对象的软引用。如果一个对象具有软引用,内存空间足够,垃圾回收器就不会回收它;如果内存空间不足了,就会回收这些对象的内存。只要垃圾回收器没有回收它,该对象就可以被程序使用。软引用可用来实现内存敏感的高速缓存。使用软引用能防止内存泄露,增强程序的健壮性。 Soft...
分类:
移动开发 时间:
2014-08-16 11:00:00
阅读次数:
196
jvm启动的时候会固定分配内存,将其分为程序计数器,堆内存,栈内存。程序计数器记录每个线程下一条指令的地址。堆内存存放类的实例变量和数组,空间是共享的栈内存存放局部变量,每个线程拥有私有的栈空间垃圾回收器(gc)主要负责堆内存的回收任务。栈内存中的内容存活的周期非常短。堆内存中可以分为,年轻代,老年...
分类:
其他好文 时间:
2014-08-15 17:23:19
阅读次数:
167
Java从JDK1.2版本开始,就把对象的引用分为四种级别,从而使程序能更加灵活的控制对象的生命周期。这四种级别由高到低依次为:强引用、软引用、弱引用和虚引用。 这里重点介绍一下软引用和弱引用。 如果一个对象只具有软引用,那么如果内存空间足够,垃圾回收器就不会回收它;如果内存空间不足了,就会...
分类:
编程语言 时间:
2014-08-12 18:51:34
阅读次数:
351
java中提供了垃圾回收器(简称gc),对于不再使用的内存能自动将其释放。那gc是怎么工作的呢?
居然要垃圾回收,那么就要定位什么是“垃圾”。在JAVA里面认为对任何“活”的对象,都能追溯到其在堆栈区或静态存储区的引用,简称“活对象”,简单点来说就是有对象引用指向它。那么怎么找出所有的“活对象”呢?就是从堆栈和静态存储区出发遍历所有的对象引用,定位引用指向的对象,该对象中包含的所有对...
分类:
编程语言 时间:
2014-08-07 09:50:19
阅读次数:
290
一、元数据在COM中所有组件信息都存储在类型库中。.NET中信息都存储在数据集中。一些COM组件有类型库,一些却没有(如VB编的,因为C++可以用IDL——接口定义语言表述接口和方法,而VB不行)。没有的话需要用C++头文件来表述接口和方法。二、释放对象.NET通过垃圾回收器释放对象。COM组件通过...
分类:
Web程序 时间:
2014-08-01 13:00:41
阅读次数:
224
JVM 的垃圾回收器对于不同类型的引用有不同的处理方式。
java中对于一个对象来说,只要有引用的存在,它就会一直存在于内存中。
如果这样的对象越来越多,超出了JVM中的内存总数,JVM就会抛出OutOfMemory错误。
虽然垃圾回收的具体运行是由JVM来控制的,但是开发人员仍然可以在一定程度上与垃圾
回收器进行交互,其目的在于更好的帮助垃圾回收器管理好应用的内存。这种交互方式
就是...
分类:
编程语言 时间:
2014-07-29 21:57:33
阅读次数:
327
垃圾回收器有2种不同的工作模式,分别为工作站模式(Workstation)和服务器模式(Server),按照GC线程的工作方式,又可以分成并发方式(Concurrent),非并发方式(Non-concurrent)。在工作站模式上,可以运行并发方式和非并发方式,而在服务器模式上,只能运行非并发方式。在.NET..
分类:
其他好文 时间:
2014-07-27 12:00:47
阅读次数:
214
【GC类】 GC是一个静态类。 垃圾回收器跟踪并回收托管内存中分配的对象。垃圾回收器定期执行垃圾回收以回收分配给没有有效引用的对象的内存。当使用可用内存不能满足内存请求时,垃圾回收会自动进行。或者,应用程序可以使用Collect方法强制进行垃圾回收。 垃圾回收器不识别非托管代码中对对象的引...
分类:
其他好文 时间:
2014-07-21 10:37:17
阅读次数:
202