Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 用于缓存所有指令的ASM帮助器类_Java_Bytecode_Java Bytecode Asm - Fatal编程技术网

Java 用于缓存所有指令的ASM帮助器类

Java 用于缓存所有指令的ASM帮助器类,java,bytecode,java-bytecode-asm,Java,Bytecode,Java Bytecode Asm,因此,我试图实现一个方法代码的有状态转换,它从我的MethodVisitor感知一条特殊指令a开始,然后需要缓存以下所有指令,直到访问者遇到一条返回特定结果的方法的特殊调用指令,然后我需要在指令A之前插入一些代码,然后输出缓存在指令缓存中的所有指令。是否有帮助类帮助我侦听所有指令访问并在需要时应用它们?如果您仅使用核心API,则必须自己实现缓存(AFAIK)。 对于您的情况,最好使用树API(请参阅手册中的),在这里您可以使用给定方法中的所有指令访问列表。请参见如何使用树API的示例。完全正确!

因此,我试图实现一个方法代码的有状态转换,它从我的MethodVisitor感知一条特殊指令a开始,然后需要缓存以下所有指令,直到访问者遇到一条返回特定结果的方法的特殊调用指令,然后我需要在指令A之前插入一些代码,然后输出缓存在指令缓存中的所有指令。是否有帮助类帮助我侦听所有指令访问并在需要时应用它们?

如果您仅使用核心API,则必须自己实现缓存(AFAIK)。
对于您的情况,最好使用树API(请参阅手册中的),在这里您可以使用给定方法中的所有指令访问列表。请参见如何使用树API的示例。

完全正确!我使用了树API和核心API