今天我要问你的问题是,谈谈你对 Java 平台的理解?“Java 是解释执行”,这句话正确吗? 典型回答 Java本身是一种面向对象的语言,最显著的特性有两个。一是所谓的“书写一次,到处运行”,能够非常容易获得跨平台能力;另一个就是垃圾收集,Java通过垃圾收集器回收分配内存,大部分情况下,程序员不 ...
分类:
编程语言 时间:
2019-05-03 18:53:07
阅读次数:
125
在Java运行时的几个数据区域中,程序计数器,虚拟机栈,本地方法栈3个区域随着线程而生,随线程而灭,因此这几个区域的内存分配和回收具有确定性,不需要过多考虑垃圾回收问题,因为方法结束或者线程结束时,内存就回收了。但是方法区和堆区不一样,一个接口或者实现类所需要的内存可能不一样,一个方法的多个分支需要 ...
分类:
编程语言 时间:
2019-04-30 23:31:57
阅读次数:
201
串行回收和并行回收串行回收:JDK1.5前的默认算法,执行垃圾回收时程序停止时间较长,缺点是只有一个线程并行回收:多个线程执行垃圾回收,适合吞吐量系统,回收时系统停止运行Serial收集器最古老的、最稳定的的收集器,可能产生较长的停顿,仅适用单线程收集,新生代、老年代均采用串行回收,新生代采用赋值算法,老年代采用标记->压缩算法,垃圾收集过程中会StopTheWorld(服务暂停)特点:CP
分类:
其他好文 时间:
2019-04-24 09:22:30
阅读次数:
179
5.1、案例分析 5.1.1、高性能硬件上的程序部署策略 假如一个15w/天左右的在线文档类型网站再准备更换硬件系统 新的硬件为4个CPU、16GB物理内存,操作系统为64为Cento是 Resin作为Web服务器 整个服务器暂时没有部署别的应用,所有的硬件资源都可以提供给这个访问量不大的网站使用 ...
分类:
其他好文 时间:
2019-04-24 00:36:56
阅读次数:
207
什么是垃圾回收机制?不定时的清理不可达对象,不可达对象不会立马被回收,垃圾收集器在一个Java程序中是自动的,不能强制执行,即使我们已经清楚的确定这块内存已经没有用处了,应该被回收掉,也不能强制执行,我们能做的只是调用System.gc()来建议垃圾回收器,这块内存可以回收,但垃圾收集器回收不回收,什么时候回收,都是不可知的finalize()方法的作用在垃圾收集器回收对象前做必要的清理工作,这个
分类:
编程语言 时间:
2019-04-23 15:40:51
阅读次数:
163
Android运行时ART和Dalvik虚拟机使用分页和内存映射(mmapping)管理内存。这意味着所有被修改过的内存——无论是通过分配新的对象还是触摸被映射的页——仍然驻留在RAM中并且不能移除分页。唯一从应用中释放内存的方法是释放应用持有的对象引用,让内存能够被垃圾收集器使用。但有一个例外:如 ...
分类:
其他好文 时间:
2019-04-22 21:07:31
阅读次数:
147
-XX: MaxDirectMemorySize >设置直接内存,不设置与Java堆内存最大值一致,就是jvm虚拟机运行可支配的内存 -XX:PermSize(老年代大小)和-XX:MaxPermSize(永久代大小) >设置方法区大小 -Xoss >设置本地方法栈大小(实际无效,栈容量只由-Xss ...
分类:
其他好文 时间:
2019-04-22 15:14:37
阅读次数:
346
物联网得到采用的势头越来越猛,但是公共云跟得上步伐吗?数据引力会影响企业处理数据的方式,从而促使一些云服务提供商重新考虑战略。 无论我们怎样努力,都不可能违背物理定律。我具体指的是数据引力(data gravity)和计算。网络边缘的物联网对IT运营和厂商服务带来了显著的影响。 比如说,物联网已迫使 ...
分类:
其他好文 时间:
2019-04-18 23:24:34
阅读次数:
282
垃圾收集算法 (1)标记 清除算法 算法分为两个步骤:首先 标记出所有需要回收的对象 ,在标记完成后 统一回收所有被标记的对象 。 方法不足 : (1)标记和清除两个过程的效率都不高。 (2)标记清除后 ...
分类:
编程语言 时间:
2019-04-13 23:59:38
阅读次数:
346
JVM 调优概述 性能定义 吞吐量 - 指不考虑 GC 引起的停顿时间或内存消耗,垃圾收集器能支撑应用达到的最高性能指标。 延迟 - 其度量标准是缩短由于垃圾啊收集引起的停顿时间或者完全消除因垃圾收集所引起的停顿,避免应用运行时发生抖动。 内存占用 - 垃圾收集器流畅运行所需要的内存数量。 调优原则 ...
分类:
其他好文 时间:
2019-04-13 22:02:51
阅读次数:
149