摘要: 一.简介 使用锁,维护计数器的串行访问与安全性。 二.对象头Mark 对象头的标记,32位。 描述对象的hash、锁信息、垃圾回收标记,年龄: 指向锁记录的指针 指向monitor的指针 GC标记 偏向锁线程ID 三.偏向锁 大部分情况没有竞争,所以可以通过偏向来提高性能。所谓的偏向,就是偏心,即锁 阅读全文
posted @ 2018-07-19 11:53 Dlimeng 阅读(8) 评论(0) 推荐(0)
摘要: 一.class装载验证流程 1.加载 装载类的一个阶段 取得类的二进制流 转为方法区数据结构 在java堆中生成对应的java.lang.Class对象 2.链接 验证: 目的:保证Class流的格式正确。 文件格式的验证:是否以0xCAFEBABE开头。版本号是否合理。 元数据验证:是否有父类,继 阅读全文
posted @ 2018-07-19 11:39 Dlimeng 阅读(9) 评论(0) 推荐(0)
摘要: 在linux环境下 一.uptime 系统时间,运行时间 连接数: 每一个终端算一个连接 1,5,15分钟内的系统平均负载 运行队列中的平均进程数 二.vmstat 可以统计系统的CPU,内存,swap,io等情况 vmstat 1 4 三.top cpu内存 每个进程占CPU情况 四.pidsta 阅读全文
posted @ 2018-07-19 11:19 Dlimeng 阅读(11) 评论(0) 推荐(0)
摘要: 一.MAT简介 MAT是分析工具,安装略。 二.配置 出现oom导出dump文件,分析报告 三.堆分析 1.OOM(内存溢出)原因: StackOverFlow 栈 ,Stack属于栈的区域,属于每条线程私有的 HeapOutOfMemory 堆 ConstantOutOfMemory 常量池 Di 阅读全文
posted @ 2018-07-19 11:00 Dlimeng 阅读(9) 评论(0) 推荐(0)