Java性能优化原则:代码运算性能、内存回收、应用配置(影响Java程序主要原因是垃圾回收,下面会重点介绍这方面) 代码层优化:避免过多循环嵌套、调用和复杂逻辑。 Tomcat调优主要内容如下: 1、增加最大连接数 2、调整工作模式 3、启用gzip压缩 4、调整JVM内存大小 5、作为Web服务器 ...
分类:
其他好文 时间:
2017-08-10 16:01:06
阅读次数:
219
垃圾收集器与内存分配策略(六)——内存分配与回收策略 对象的内存分配,一般来说就是在堆上的分配(但也可能经过JIT编译后被拆散为标量类型并间接地栈上分配),对象分配的细节取决于当前使用的是哪一种垃圾收集器组合,还有虚拟机中与内存相关的参数设置。 区分Minor GC与 Full GC: 新生代GC( ...
分类:
其他好文 时间:
2017-08-08 17:56:11
阅读次数:
154
一:swap分区概念原理swap分区:(存放内存溢出来的数据)从功能上讲,交换分区主要是在内存不够用的时候,将部分内存上的数据交换到swap空间上,以便让系统不会因内存不够用而导致oom或者更致命的情况出现。一:swap基本概念前提:知道内存回收概念为什么要进行内存回收?1:内..
分类:
系统相关 时间:
2017-08-06 10:57:37
阅读次数:
226
垃圾收集器与内存分配策略(四)——垃圾收集器 垃圾收集器介绍 Serial收集器 ParNew收集器 Parallel Scavenge收集器 Serial Old收集器 1.5、 Parallel Old收集器 CMS收集器 G1收集器 收集算法是内存回收的方法论,垃圾收集器则是内存回收的具体实现 ...
分类:
其他好文 时间:
2017-08-03 18:54:59
阅读次数:
174
http://blog.csdn.net/mengern/article/details/38150431 Java中提供了垃圾强制回收机制的方法System.gc(),但是系统并不保证会立即进行垃圾回收,而是JVM根据定义的一套垃圾回收算法来确定,算法用来提高垃圾回收的效率。 判断一个存储单元是否 ...
分类:
编程语言 时间:
2017-08-01 12:39:27
阅读次数:
174
<a>C++ <span style="font-family:宋体;">智能指针具体解释</span></a> 一、简单介绍 因为 C++ 语言没有自己主动内存回收机制。程序猿每次 new 出来的内存都要手动 delete。程序猿忘记 delete。流程太复杂。终于导致没有 delete。异常导致 ...
分类:
其他好文 时间:
2017-07-31 11:24:01
阅读次数:
174
一、概述 Java GC(Garbage Collection,垃圾收集,垃圾回收)机制,是Java与C++/C的主要区别之一,作为Java开发者,一般不需要专门编写内存回收和垃圾清理代码,对内存泄露和溢出的问题,也不需要像C程序员那样战战兢兢。经过这么长时间的发展,java GC机制已经日臻完善, ...
分类:
其他好文 时间:
2017-07-30 11:39:46
阅读次数:
195
一、概述 内存在计算机中占据着至关重要的地位,任何运行时的程序或者数据都需要依靠内存作为存储介质,否则程序将无法正常运行。与C和C++相比,使用Java语言编写的程序并不需要显示的为每一个对象编写对应的内存分配和内存回收等相关的函数,这主要是得益于JVM的自动内存管理机制,使得Java开发人员可以从 ...
分类:
其他好文 时间:
2017-07-27 16:38:16
阅读次数:
181
如何判断一个对象是可回收的? Java虚拟机采用可达性分析算法来判断对象是否存活。算法基本思想:通过一系列称为“GC Roots”的对象作为起点,从这些节点开始向下搜索,搜索锁走过的路径称为引用链,当一个对象到GC Roots没有任何引用链相连时,证明此对象是不可用的,将会被判定为可回收对象。 可作... ...
分类:
其他好文 时间:
2017-07-18 01:53:48
阅读次数:
260
JAVA内存回收算法,主要采用的方式有两种,一种是标记计数器方式,一种是根目录搜索法。 标记计数器方式,是对每一个对象如果被引用,则标记计数器加1,解除引用,则标记计数器减1。当一个对象标记计数器为0时,则回收此对象。但这种方式存在问题,假如两个对象存在交叉引用,则对象值为null时,则无法回收此对 ...
分类:
编程语言 时间:
2017-07-16 20:17:26
阅读次数:
133