前言:C#的第二次课,依旧讲解C#的基础知识。内容: 1.GC:垃圾回收机制,可以回收托管模块中的垃圾。 2.值类型和引用类型: (1)值类型:所有的数值类型都是值类型,如int,byte,short,long,char,bool,float,double,枚举。计算机最小的信息单位是byt...
作者: 伯乐在线 - 赖信涛网址: http://blog.jobbole.com/91960/点击“阅读原文”,加入伯乐在线作者团队垃圾(Garbage)就是程序需要回收的对象,如果一个对象不在被直接或间接地引用,那么这个对象就成为了「垃圾」,它占用的内存需要及时地释放,否则就会引起「内存泄露」。...
分类:
其他好文 时间:
2015-10-26 20:42:44
阅读次数:
183
JVM区域总体分两类,heap区和非heap区。heap区又分:Eden Space(伊甸园)、Survivor Space(幸存者区)、Tenured Gen(老年代-养老区)。 非heap区又分:Code Cache(代码缓存区)、Perm Gen(永久代)、Jvm Stack(java虚拟机栈...
分类:
其他好文 时间:
2015-10-23 13:32:33
阅读次数:
286
JVM垃圾回收机制总结(6) :透视Java的GC特性
分类:
编程语言 时间:
2015-10-21 20:46:44
阅读次数:
187
在Java里, 当一个对象o被创建时, 它被放在Heap里. 当GC运行的时候, 如果发现没有任何引用指向o, o就会被回收以腾出内存空间. 或者换句话说, 一个对象被回收, 必须满足两个条件: 1)没有任何引用指向它 2)GC被运行.在现实情况写代码的时候, 我们往往通过把所有指向某个对象的ref...
分类:
编程语言 时间:
2015-10-21 18:46:15
阅读次数:
192
刚入门的童鞋肯能都会有一个疑问,Java不是有虚拟机了么,内存会自动化管理,我们就不必要手动的释放资源了,反正系统会给我们完成。其实Java中没有指针的概念,但是指针的使用方式依然存在,一味的依赖系统的gc,很容易就造成了内存的浪费。Java基于垃圾回收的内存机制Java的内存管理机制会自动回收无用...
分类:
移动开发 时间:
2015-10-21 17:30:36
阅读次数:
506
一、内存溢出类型1、java.lang.OutOfMemoryError: PermGen space JVM管理两种类型的内存,堆和非堆。堆是给开发人员用的上面说的就是,是在JVM启动时创建;非堆是留给JVM自己用的,用来存放类的信息的。它和堆不同,运行期内GC不会释放空间。如果web app用....
分类:
编程语言 时间:
2015-10-20 22:45:13
阅读次数:
246
1、Finalize方法(C#中是析构函数,以下称析构函数)是用于释放非托管资源的,而托管资源会由GC自动回收。所以,我们也可以这样来区分托管和非托管资源。所有会由GC自动回收的资源,就是托管的资源,而不能由GC自...
当出现HeapDumpOnOutOfMemoryError错误时,我们需要分析原因,下面的程序就是模拟这个错误并导出dump文件,好让你分析GcTest.javapackage gc;public class GcTest { private static final int _1MB= 10...
分类:
编程语言 时间:
2015-10-18 23:12:13
阅读次数:
287
本文是 Plumbr 发行的Java垃圾收集手册的部分内容。文中将介绍GC日志的输出格式, 以及如何解读GC日志, 从中提取有用的信息。我们通过-XX:+UseSerialGC选项,指定JVM使用串行垃圾收集器, 并使用下面的启动参数让 JVM 打印出详细的GC日志:-XX:+PrintGCDeta...
分类:
其他好文 时间:
2015-10-18 22:55:41
阅读次数:
329