
JVM
文章平均质量分 92
iteye_17060
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
CLASS 文件格式
Java class 文件1、Class文件是什么:class文件是java程序二进制文件的精确的定义,每一个class的文件都对应一个类或则接口,class文件是JVM真正能读懂的文件格式。2、Class文件与java的关系:一般的讲class文件由java的类文件编译而来,但是事实上class文件只是定义的一种格式,你甚至可以手动编写二进制文件,只要能满足class文...原创 2011-07-04 22:19:04 · 158 阅读 · 0 评论 -
java垃圾回收精华
本文系翻译: 原文地址:mechanical-sympathy.blogspot.com/2013/07/java-garbage-collection-distilled.htmljava垃圾回收精华串行(Serial),并行(Parallel),并发(Concurrent),CMS,G1,年轻代(Young Gen),新生代(New Gen),老生代(Old Gen),永久代(Pe...2013-10-30 14:24:15 · 201 阅读 · 0 评论 -
dump线程让死锁无处可逃
昨天看到有人问:”一个程序在运行的时候,如何知道它是否发生死锁,如果发生死锁,如何找到发生死锁的位置?“;便贴了一段dump线程的数据,今天又有人问我怎么从dump文件中分析死锁,随做此文:1、首先构造死锁,代码如下: public class Deadlocker { private static Object lock_1 = new int[1]; ...2012-10-12 20:12:51 · 352 阅读 · 0 评论 -
CLASS 文件使用例子四--AOP字节码增强探索二
在上一篇中我们分析了 public class HelloWorld{ public static void main(String [] arvgs){ System.out.println("before log"); System.out.println("hello world"); Syste...原创 2012-04-20 17:16:02 · 154 阅读 · 0 评论 -
CLASS 文件使用例子三--AOP字节码增强探索一
在上一篇中有提到spring aop的动态字节码增强,我自己也没看过spring 的实现方式,按照大家的说法应该是动态生产一个子类去重写方法,由于自己没去看过,暂且不表,接下去,可能还是打算从分析字节码的角度去看类似于spring aop这个功能反应到字节码有哪些变化,或者说实现方式,这个例子还是基于最简单的HelloWorld,还请大家回顾一下前面的几个章节,最要是这个 HelloWorl...2011-07-24 14:09:01 · 160 阅读 · 0 评论 -
HelloWorld.class 文件的解读---方法解读
前面两个例子,一个简单的替换了二进制的编码,一个通过理解class的文件格式,可以增加输出的内容,都非常简单,但是实际可能用到的不会这么简单,更多的是对方法的操作,比如spring aop的实现方式有两种动态代理和字节码增强,其中字节码增强便可以通过修改class的二进制文件完成,另外对性能分析、调试跟踪和日志记录,也可以通过这种方式简单的实现,当然在现实中我们不会去真正的操作二进制码,我们一般...2011-07-10 14:24:08 · 557 阅读 · 0 评论 -
CLASS 文件使用例子二
上一节我们看了一个简单的例子,我们通过直接改变二进制的class文件,改变程序的行为,这一节继续上面的例子看一些其他的情况,用前面的HelloWorld为例 先看java 文件: public class HelloWorld{ public static void main(String [] arvgs){ System.out.println("he...2011-07-06 22:44:37 · 121 阅读 · 0 评论 -
CLASS 文件使用例子一
上一节我们分析了一个简单的HelloWorld的class文件,那知道了这个结构有什么用呢,接下来我们通过几个例子来简单的了解一下。一、先看一个简单的例子,这个例子了,我们通过直接改变二进制的class文件,改变程序的行为,以前面的HelloWorld为例。先看java 文件: public class HelloWorld{ public static void ma...2011-07-06 22:18:31 · 161 阅读 · 0 评论 -
HelloWorld.class 文件的解读
这一篇主要针对最简单的HelloWorld的class文件进行分析,按照上一篇文章的结构去实例化的分析一个class文件。下面是java源文件 public class HelloWorld{ public static void main(String [] arvgs){ System.out.println("hello world");}} ...2011-07-04 22:41:35 · 433 阅读 · 0 评论 -
JAVA 8 :从永久区(PermGen)到元空间(Metaspace)
本文系翻译:原文地址你注意到了吗?JDK 8早期可访问版本已经提供下载了,java 开发人员可以使用java 8 提供的新的语言和运行特性来做一些实验。其中一个特性就是完全的移除永久代(Permanent Generation (PermGen)),这从JDK 7开始Oracle就开始行动了,比如:本地化的String从JDK 7开始就被移除了永久代(Permanent Generati...原创 2013-11-04 19:50:30 · 3290 阅读 · 1 评论