1

由于 AspecJ 为原始代码添加了更多逻辑,我想知道将 AspectJ 应用于不同场景的开销是多少?

有没有这方面的基准?

非常感谢!

4

1 回答 1

1

没有通用的方法来回答这个问题。这实际上取决于您的切入点的范围有多宽或多窄,以及在您的建议中执行的代码有多昂贵。通常开销很小,除非您使用动态确定的切入点和昂贵/缓慢的建议代码的非常不幸的组合来编织到目标连接点。

想象一下,您将某个代码片段添加到许多方法中。开销取决于代码段、将代码段添加到的位置数量以及添加代码的所有方法的调用次数。这就是方面编织器所做的:将编译后的字节码编织到您的类中。唯一的区别是它是自动完成的,您不必手动将代码段分散在整个代码库中。

于 2013-07-24T11:41:56.307 回答