1.值类型,引用类型?基本数据类型都是值类型:byte,short,int,long,float,double,char,boolean其他类型都是引用类型。引用类型在传入方法是,方法内部对引用类型变量的修改会改变引用类型的内容。值类型传递参数是copy。2.垃圾回收?GC机制:Android 基于...
分类:
移动开发 时间:
2015-01-25 09:49:06
阅读次数:
174
JAVA虚拟机新生代,包括eden space+2个survivor空间。
新生代用来存放新近创建的对象,新生代的特点是对象更新速度快,在短时间内产生大量的“死亡对象”。对年轻代的垃圾回收称作次级回收 (minor gc)
1、新生代与次级回收
新生代分为三个区域, 一个eden spac , 2个大小相同的survivor, 应用程序只能使用一个eden和一个survivor, 当发生...
分类:
其他好文 时间:
2015-01-23 23:06:50
阅读次数:
300
(150114_17:08:32.461)I/dalvikvm-heap( 850): Grow heap (frag case) to 10.342MB for 2457616-byte allocation
(150114_17:08:32.542)D/dalvikvm( 850): GC_FOR_ALLOC freed 20K, 25% free 10530K/14040K, pau...
分类:
其他好文 时间:
2015-01-23 13:33:53
阅读次数:
706
1 SimpleDateFormat sdf = new SimpleDateFormat(2 "yyyy-MM-dd HH:mm:ss");3 GregorianCalendar gc = new GregorianCalendar();4 ...
分类:
编程语言 时间:
2015-01-22 17:33:14
阅读次数:
159
ART运行时和Dalvik虚拟机一样,在堆上为对象分配内存时都要解决内存碎片和内存不足问题。内存碎片问题可以使用dlmalloc技术解决。内存不足问题则通过垃圾回收和在允许范围内增长堆大小解决。由于垃圾回收会影响程序,因此ART运行时采用力度从小到大的进垃圾回收策略。一旦力度小的垃圾回收执行过后能满足分配要求,那就不需要进行力度大的垃圾回收了。本文就详细分析ART运行时在堆上为对象分配内存的过程。...
分类:
其他好文 时间:
2015-01-22 01:49:30
阅读次数:
222
一、JVM内存划分方法区(持久代):存放要加载的类信息、类中静态变量、final常量、方法信息等;class对象的getname,isInterface等数据都来源于方法区。sunjdk中对应permanetgeneration堆:默认物理内存的1/64。本地方法栈:用于支持native方法的执行,存储了每个native方法调..
分类:
其他好文 时间:
2015-01-21 20:15:38
阅读次数:
191
Jmap是JDK自带的一个轻量级小工具。位于java的bin目录下,它能够打印出某个java进程(使用pid)内存中所有‘对象’的情况(如:产生那些对象,及其数量)。它不仅可以输出所有内存中对象的工具,甚至可以将VM 中的heap,以二进制输出成文本。使用方法 jmap -histo pid。也可以将其保存到文本中去,在一段时间后,使用文本对比工具,可以对比出GC回收了哪些对象。还可以和jhat ...
分类:
其他好文 时间:
2015-01-21 16:34:44
阅读次数:
199
第一个线程负责回收Heap的Young区第二个线程在Heap不足时,遍历Heap,将Young 区升级为Older区Older区的大小等于-Xmx减去-Xmn,不能将-Xms的值设的过大,因为第二个线程被迫运行会降低JVM的性能。JVM的垃圾回收机制详解和调优1.JVM的gc概述 gc即垃圾收集机制...
分类:
其他好文 时间:
2015-01-21 06:35:32
阅读次数:
295
基本预备相关知识 1 java的GC只负责内存相关的清理,所有其它资源的清理必须由程序员手工完成。要不然会引起资源泄露,有可能导致程序崩溃。2 调用GC并不保证GC实际执行。3 finalize抛出的未捕获异常只会导致该对象的finalize执行退出。4 用户可以自己调用对象的finalize方法,...
分类:
编程语言 时间:
2015-01-20 21:52:41
阅读次数:
175
前言今天查看一个同事的代码,发现代码中多处地方使用了GC.Collect()方法,我问他为什么这么做,他说感觉程序中定义了好多变量,怕GC回收不及时,用GC.Collect()可以手动掌控GC进行垃圾回收。先不说他对GC的垃圾回收机制还不了解,就是调用GC.Collect()后GC真的会不会回收这个...
分类:
其他好文 时间:
2015-01-19 19:02:59
阅读次数:
234