java instrument 初探

java在1.5引入java.lang.instrument,你可以由此实现一个java agent,通过此agent来修改类的字节码, 本文中,会通过java instrument 实现一个简单的profiler。 当然instrument并不限于profiler,instrument可以做很多事情,它类似一种更低级,更松耦合的AOP,你可以由此产生无限的遐想。 接下来要做的事情,就是计算一个方法所花的时间,通过我们会在代码这么写: 在方法开始开头加入long stime = System.nanoTime(); 在方法结尾通过System.nanoTime()-stime得出方法所花时间,你不得不在你想监控的每个方法中写入重复的代码, 好一点的情况,你可以用AOP来干这事,但总是感觉有点别扭,这种profiler的代码还是打包在你的项目中,java instrument使得这更干净。1) 写agent类packa
Tags: 

延伸阅读

最新评论

发表评论