2013-07-18 5 views
1

Поскольку AspecJ добавляет больше логики к исходному коду, я хочу знать, что накладные расходы на использование AspectJ для разных сценариев?AspectJ performance

Есть ли в этом ориентир?

Большое спасибо!

+0

Я знаю, что этот старый, но все еще указан как неотвеченный. Не могли бы вы согласиться и перенести мой ответ, если это будет уместно? Благодарю. – kriegaex

ответ

1

Нет общего способа ответить на вопрос. Это действительно зависит от того, насколько широкий или узкий объем ваших pointcuts и насколько дорогой код, выполненный в вашем совете. Обычно накладные расходы небольшие, если вы не используете очень неудачную комбинацию динамически определенных pointcuts и дорогостоящего/медленного кода рекомендаций, которые будут вплетены в целевые точки соединения.

Представьте, что вы добавили фрагмент кода ко многим методам. Накладные расходы зависят от фрагмента, количества мест, в которые вы добавляете фрагмент, и количества вызовов для всех тех методов, в которых вы добавили код. Это то, что делает ткач аспект: соткать скомпилированный байт-код в свои классы. Единственное различие заключается в том, что это делается автоматически, вам не нужно разбрасывать фрагменты всей базы кода вручную.