ReflectASM much faster...是不是真的哦?

答复哈 发布于 2012/08/14 22:19
阅读 1K+
收藏 0
这东西是不是真的比java原生反射还快?
加载中
1
丁海燕

我也研究了一番 ReflectASM,发现性能上提升不少,确实和对比数据差不多,见:

Java 下高效的反射工具包 ReflectASM 使用例解

要注意 MethodAccess, FieldAccess, ConstructorAccess 等实例的构造会消耗不少时间,所以它们的实例宜重用起来。

答复哈
答复哈
多谢~我看看哈~
0
咖啡碼農
咖啡碼農
自己下回来测试下不就行了吗
答复哈
答复哈
就是问问哈,看看有没有前辈搞过~也不知道用处大不大~
0
一堆BUG
一堆BUG

看了一下,这个工具就四个类MethodAccess,FieldAccess,ConstructorAccess,AccessClassLoader

是在ASM4的项目上再次封装了一下

0
溜子冲的根
溜子冲的根
字节码操作?看来是真的快一些,先测试一把。
0
欧德高
欧德高
实测,方法调用没有FastMethod快
0
Jacle
Jacle
发现了一个bug,如果类中有重载方法,无法调用指定的一个重载方法。
lateron
lateron
不是bug,是你使用有问题,可以看下我的博客:http://my.oschina.net/u/203921/blog/83168
L
LiaoHongliu
这个是因为它会根据定义的顺序查询到符合名字的第一个,其实它推荐是通过方法的索引来调用的
0
丁海燕
int fooIndex = access.getIndex( "foo" , String. class , String.class);    

access.invoke(someObject, fooIndex, "Unmi");

可以用索引来定位方法,获取索引时像 JDK 反射那样用参数确定是哪个重载方法

我在博客里有个研究: Java 下高效的反射工具包 ReflectASM 使用例解

可供参考

返回顶部
顶部