PermGen space:全称是Permanent Generation space。就是说是永久保存的区域,用于存放Class和Meta信息,Class在被Load的时候被放入该区域 Heap space:存放Instance。 GC(Garbage Collection)应该不会对PermGen s...
分类:
系统相关 时间:
2015-07-21 17:31:04
阅读次数:
220
经过半个多世纪的发展、目前内存的动态分配与内存回收技术已经相当成熟,但作为程序猿还是得了解GC和内存分配。当需要排查各种内存溢出、内存泄漏、当垃圾收集成为系统达到更高并发量的瓶颈时,就需要对内存的动态分配与内存回收技术实施必要的监控和调节。 本文讲叙了内存中垃圾的收集及内存分配策略。相比较而言...
分类:
其他好文 时间:
2015-07-20 23:04:17
阅读次数:
228
在C语言中可以通过宏定义的方式实现匿名函数,具体如下:123456#define lambda(return_type, function_body) \({ \ return_type $this function_body \ $this; \})#define $ lambda该定义利用了GC...
分类:
编程语言 时间:
2015-07-20 21:20:57
阅读次数:
854
转自http://hellojava.info/?p=341HelloJava微信公众账号网站面向GC的Java编程Leave a reply这是内部一个同事(沐剑)写的文章,国外有一家专门做Java性能优化的公司,并且它主要关注Java内存使用的优化,重点是数据结构的选择,优化效果非常明显,所以其...
分类:
编程语言 时间:
2015-07-20 19:12:24
阅读次数:
176
Dalvik虚拟机与Java虚拟机有着很多相似的特性,都支持GC,JIT,JNI等等。其主要区别在于文件格式以及指令集不同,下面对两者的特性进行比较与讨论。Difference1:文件格式 Dalvik的虚拟机类文件采用dex格式,而JVM的类文件是class格式。不同之处在于,我们熟悉的cl...
分类:
其他好文 时间:
2015-07-20 18:34:27
阅读次数:
133
1,java堆溢出
?JAVA堆用于存储对象实例,只要不断的创建对象,保证GC Roots到对象直接有可达路径,避免垃圾回收机制清楚对象,那么对象数量叨叨一定程度后,会产生内存溢出异常。
?如下代码,限制Java堆大小为1024m,并且-Xms和-Xmx的参数相同,即不可扩展。同事在Run Configuration中增加VM 参数:
-XX:+HeapDum...
分类:
编程语言 时间:
2015-07-19 18:05:30
阅读次数:
210
一个性能较好的web服务器jvm参数配置:
-server //服务器模式
-Xmx2g //JVM最大允许分配的堆内存,按需分配
-Xms2g //JVM初始分配的堆内存,一般和Xmx配置成一样以避免每次gc后JVM重新分配内存。
-Xmn256m //年轻代内存大小,整个JVM内存=年轻代 + 年老代 + 持久代
-XX:PermSize=128m //持久代内存大小
-Xss256...
分类:
其他好文 时间:
2015-07-19 11:54:49
阅读次数:
117
介绍一个golang内存泄露case的排查,go的gc、profile等...
分类:
其他好文 时间:
2015-07-19 00:12:36
阅读次数:
166
所谓的后台(daemon)线程,也叫守护线程,是指程序在运行的时候,在后台提供一种通用服务的线程(例如:守护线程GC),并且,这种线程并不属于程序中不可或缺的部分;因此当所有的非后台线程结束时,程序也就终止了,同时杀死所有的后台线程。相反,只要有任何非后台线程(例如:非守护线程main())还存在,...
分类:
编程语言 时间:
2015-07-17 18:27:29
阅读次数:
139
最后在实现一个无限循环的ViewPager,展示图片,功能实现了,但是运行一段时间之后会挂掉。多亏了AndroidStudio的Memory Monitor,发现了内存一直在增长。怎么触发gc内存都不会减少,确定了内存泄露了,但是不知哪里出问题了。一时想到的排查内存泄露的工具,就是MAT了,但是没找...
分类:
其他好文 时间:
2015-07-17 17:47:39
阅读次数:
207