Java6 的类反射瓶颈解决方案
来源:互联网 发布:聚合色情直播软件 编辑:程序博客网 时间:2024/06/06 01:07
在前面的一篇文章中提到了类反射的瓶颈原因,为了避免大量简单类型的转型,大量的数组产生,提出解决方案
首先sun的method.invoke 是不可用了,因为invoke 的使用本来产生了大量的数组为了参数。
解决方案
一般我们类反射通常这样写:
Class="testclass" Method="testmethod" args[0].type="int" value="1" arg[1].type="long" value=1 arg[2].type="byte" value="3" return="void"
构建arg 的基础类
构建method 的基础类,第三个参数是代表返回的类型
然后分析刚才的arg[]的类型,大小,使用 ClassFileAssembler 生成一个虚拟的method1的类继承method,直接生成字节码,并且load到JVM里
而生成的class源码应该类似
对args的参数赋值是在虚拟类里面直接赋值的,同时为了避免object args每次大量生成,可以吧object args 放入threadlocal, 绑定到线程,每次取出直接赋值就可以了。
- Java6 的类反射瓶颈解决方案
- Java6 的类反射瓶颈
- 密码运算性能瓶颈的解决方案
- 关于火车订票系统瓶颈的分析及解决方案
- Spark大规模机器学习的性能瓶颈和解决方案
- Java6学习笔记32——Java6中向量类的使用
- Ubuntu使用命令安装jdk失败的解决方案--sudo apt-get install sun-java6-jdk
- Ubuntu使用命令安装jdk失败的解决方案--sudo apt-get install sun-java6-jdk
- Ubuntu使用命令安装jdk失败的解决方案--sudo apt-get install sun-java6-jdk
- Ubuntu使用命令安装jdk失败的解决方案--sudo apt-get install sun-java6-jdk
- Java6 JDK的安装
- Java6 JDK的安装
- Java6 WebService的发布
- java6的优点
- Java6 WebService的发布
- 程序员的发展瓶颈--如何突破瓶颈,瓶颈--突破瓶颈
- Java6 WebServices传递集合对象终极解决方案
- java6
- 莫名的错误
- windows下C的定时器timeSetEvent使用
- Firefox 4 PPA for Ubuntu 10.04 and 10.10 users
- 关于MFC OnDraw重绘时画面闪烁问题的解决
- WPF访问数据库的小例子
- Java6 的类反射瓶颈解决方案
- C语言程序的内存布局
- Oracle SQL 内置函数大全
- android中MediaRecorder的架构介绍
- 学习android心里旅程
- 原理框图
- poj 1664 放苹果
- 你走,我不送你,你来,无论多大风多大雨我都会去接你
- Busybox 裁剪[Z]