随笔分类 - JVM
摘要:一、常见垃圾回收器组合参数设定 1、-XX: UseConcMarkSweepGC = ParNew + CMS + Serial Old 2、-XX: Use[arallelGC = Parallel Scavenge + Parallel Old(1.8默认)【PS + SerialOld】 3
阅读全文
摘要:一、Runtime Data Area 1、包括 Program Counter:PC,存放指令的位置。 取PC中的位置,找到对应位置的指令-->执行该指令-->指令++ Direct Memory:JVM可以直接访问的内核空间的内存。NIO,提高效率,直线零拷贝 method area:被所有线程
阅读全文
摘要:一、硬件层数据一致性 L0、L1、L2三层在一个CPU中,其余为共享空间 若x、y在主存中,主存将x、y加载到L3中。每个cpu都会缓存L3中数据,若此时cpu1将x变为1,cpu2将x变为2。则会造成数据不一致情况 解决办法:加总线锁,当cpu1操作x时,cpu2不能操作L3。以此来保证数据一致性
阅读全文
摘要:一、JVM基础 1、JVM是一种半解释半编译的语言 编译:java文件-->javac编译-->class文件 解释:JVM去解释为二进制文件,交给操作系统去执行 2、JVM、JRE、JDK之间的关系 JRE=JVM+一些java的类库(String.class、Object.class等) JDK
阅读全文
摘要:一、垃圾 在c或c++中垃圾是要手动进行回收的 Java:new对象申请内存 自动回收内存,若手动释放内存,容易出现两种类型问题: 1、忘记回收,导致内存溢出 2、多次回收 二、什么是垃圾 1、如果一个对象没有任何引用指向他 2、存在多个对象,互相之间引用,没有其他对象指向这个循环引用的对象(多个)
阅读全文