【发布时间】:2019-01-21 20:49:49
【问题描述】:
java.lang.invoke.MethodHandle 和朋友允许通过一系列combinators 生成符合 JIT 条件的运行时代码。
如何在 MethodHandles 中创建局部变量?理想情况下,我想要的方法签名看起来像
MethodHandle withLocalVariable(
Class<?> varClazz, Function<VarHandle, MethodHandle> usingVar)
虽然我不确定 VarHandle 实际上是完全正确的抽象。
请注意,仅创建一个持有者变量还不够好——我希望MethodHandle 的不同调用使用不同的变量。
【问题讨论】:
-
你能举个例子来说明它的行为/使用方式吗?
标签: java methodhandle