随风而逝的博客

有兴趣就加qq群555373607,什么都可以侃

JAVA编译后class文件的结构

2018-12-30 17:13:12

阅读数 34

评论数 0

string,stringbuffer与StringBuilder的区别

最近在学习Java的时候,遇到了这样一个问题,就是String,StringBuilder以及StringBuffer这三个类之间有什么区别呢,自己从网上搜索了一些资料,有所了解了之后在这里整理一下,便于大家观看,也便于加深自己学习过程中对这些知识点的记忆,如果哪里有误,恳请指正。   这三个类...

2018-12-30 16:48:01

阅读数 14

评论数 0

java内存区域与内存溢出异常

概述     java程序员将内存控制的权利交给了虚拟机,如果不了解虚拟机是如何运行的,那么一旦出现内存泄漏和溢出方面的问题,排查错误将会是一项艰难的工作。 运行时数据区域     java虚拟机在执行java程序的过程中会把它所管理的内存划分为若干数据区域。这些区域都有各自的用途,以及创建...

2018-12-30 16:37:07

阅读数 28

评论数 0

内存分配与回收策略

对象优先在eden分配 大多数情况下,对象优先分配到新生代Eden中,当Eden中没有足够的空间的时候,虚拟机将发起一次minor GC。如果放不下,将会放到survivor,还不够大,将会放到老年代中。 大对象直接进入老年代 大对象直接放到老年代中,可以通过-xx:pretennresiz...

2018-12-30 16:16:32

阅读数 143

评论数 0

垃圾收集器

serial收集器 serial收集器是历史最悠久的。 serial收集器是单线程,当开始工作的时候,暂停所有正在执行的程序,然后执行垃圾收集。这点是很难接受的。但是在客户端使用的时候,它的有点是简单高效的。 parnew收集器     parnew收集器就是serial收集器的多线程版本...

2018-12-30 16:15:15

阅读数 20

评论数 0

hotspot的算法实现

枚举根节点     枚举根节点的时候,执行系统必须停下来。但是虚拟机不需要一个不漏的去检查。虚拟机有办法直接知道哪些地方存在对象引用。在Hotspot中使用的是oopmap的数据结构。 安全点     Hotspot没有为每条指令生成oopmap,如果生成,将会产生大量的资源浪费,只是在特定...

2018-12-30 16:14:04

阅读数 39

评论数 0

垃圾收集算法

标记-清除算法 缺点:1.效率不高;2.空间碎片太多。 复制算法     为了解决效率问题,就有了复制算法。复制算法就是将内存分配为两块空间,当其中一个进行垃圾收集完成后,将剩下的复制到另外一块,同时清除掉当前内存中的所有信息。缺点就是内存被分为两部分,导致可以使用的内存区域减少。 标记-...

2018-12-30 16:12:23

阅读数 37

评论数 0

对象已死么

    垃圾回收前需要知道哪些对象需要被收集,就需要知道哪些对象是死了还是活的。下面就是知道哪些对象是死是活的算法。 引用计算法     引用计数算法是每次使用一个对象的时候就加1,不使用后就减1,为0了,就说明这个对象死了。但是java中没有使用引用计数算法,因为java中存在着循环引用的问...

2018-12-30 16:10:33

阅读数 59

评论数 0

迅雷工作原理

迅雷是一款新型的基于P2SP技术的下载软件,这里的S指的是SERVER,就是在P2P的基础上增加了对SERVER的资源下载,也就是说P2SP是一种能够同时从多个服务器和多个节点进行下载的技术,因此迅雷的下载速度会比只能从服务器下载(P2S)或只能从节点下载(P2P)的软件速度要更快。简单说一下上面...

2018-12-10 00:02:15

阅读数 484

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭