Aquarium
Aquarium copied to clipboard
[RubyForge-19321] Advice overhead is too high
Date:2008-04-05 11:29 Priority:4 Submitted By:Dean Wampler (deanwampler) Assigned To:Dean Wampler (deanwampler) Category:Optimizations State:Open Summary:Advice overhead is too high
Detailed description
A method call takes 20-40 times longer when advised.
Method aliasing takes about 2 times longer.
Some possible bottlenecks:
- The Proc array. If we make unadvising optional, then we can simplify this structure.
- Also, if there is only one advice on a join point, then we could simply use
alias_method
. We could start with this as the default, then replace it with the fuller implementation if a second advice is applied.