[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [equinox-dev] Integrating AspectJ Load-TimeWeaving into OSGi/Eclipse

Matthew,

Agree, but is the pure creation of a weaver already a performance or
memory footprint problem (if the weaver never starts to weave)?
We need to do some measurements in this area.

Agree.

Great to hear that more improvements are planned for the AspectJ weaver.
What do you think about letting different weavers share their data (with
respect to the bundle dependencies) to reduce the memory footprint even
more?
Rather than create a parallel network of weavers the plan is to use
java.lang.Class objects and reflection for certain resolved types instead
of bytecode.

I tried something like this for all java.* and javax.* classes and could share some code if you like. Would it be possible to let the weaver skip the (woven or analysed) bytecode once the class is loaded? This would mean that the weaver would only need to parse and keep the bytecode of classes that are not loaded (woven) yet. Correct?


I would vote for the conservative one at the beginning... ;-) Do you
have any idea how to let the caching service detect changes if not done
via the version number, for example? I thought about some kind of
hashing but that seems to impact performance in a negative way. And
performance is a very critical factor for LTW I think...
I had and enlightening conversation with Jeff yesterday which has set my
plans in this area back to square one :-(.

Can you provide more insights about your enlightening conversation?

Sounds cool. Do you have the code of AOSGi available somewhere? Is it
open source? I would love to take a look at it...
Jeff has suggested creating an Equinox incubation area where we can share
our implementations and work on convergence.

Sounds good to me!

-Martin