01 2017 档案
摘要:当JVM运行Java程序的时候,它会加载对应的class文件,并提取class文件中的信息存放在JVM的方法区内存中。 Class文件组成 1、Class文件是一组以8位字节为基础单位的二进制流,各个数据项目严格按顺序紧凑排列在Class文件中,中间没有分隔符。所以Class文件中存储的内容几乎全部
阅读全文
摘要:字符串常量池-常量项(cp_info)结构 案例1 javac StringDemo.java javap -verbose StringDemo.class #15:CONSTANT_Utf8_info结构体 #2:CONSTANT_String_info结构体 案例2 javac StringD
阅读全文
摘要:jvm工具 知识,经验是基础,数据是依据,工具是运营知识处理数据的手段 数据:运行日志、异常堆栈、GC日志、线程快照、堆转存储快照 JPS:虚拟机进程状况工具 jvm process status tool (Local Virtual Machine Identifier)LVMID和名称。 -q
阅读全文
摘要:三大流行jvm sun HotSpot ibm j9 BEA JRockit Oracle 会基于HotSpot整合 JRockit。 jvm运行时数据区 java虚拟机所管理的内存将会包括以下几个运行时数据区域 程序计数器 1、线程私有,随线程而生,随线程而灭。 2、如果线程在执行java方法,计
阅读全文
摘要:理解同步、异步,阻塞和非阻塞 结论:阻塞、非阻塞与是否同步异步无关。 转自知乎 “阻塞”与"非阻塞"与"同步"与“异步"不能简单的从字面理解,提供一个从分布式系统角度的回答。1.同步与异步同步和异步关注的是消息通信机制 (synchronous communication/ asynchronous
阅读全文