Thanks Ken,

 I will take a look at it this week.

craig

On Sun, Jan 31, 2010 at 3:35 AM, Ken Egozi <[email protected]> wrote:

> Hi guys.
>
> I came across a few performance problems when rendering views in one of our
> applications.
> dotTracing into the problem, I managed to identify a few problems internal
> to AspView which I will commit to the codbase.
> However, one of the main problems are with AspView's usage of the
> DictionaryAdapterFactory.
>
> The view engine creates a typed-adapter for each view instance. We have a
> few pages which renders hundreds of sub views, and the amount of calls to
> factory.GetAdapter<IView>(properties) costs a significant amount of the
> rendering time.
>
> Looking at GetAdapter() call, I saw that when asking for an adapter over an
> interface that was already requested before, it is true that we do not
> re-generate the type and the assembly, but we still do a pricey lookup for
> the exact Type from all of the dynamically loaded assemblies.
> I introduced a Dictionary<Type,Type>, that will cache the adapter type for
> each interface, making consecutive calls *much* faster.
>
> The attached test case when (on my machine) from 16ms to 3ms.
>
> Attached also is the change patch.
>
> For all of you IDictAdapter people, please revise the patch.
>
> Should this change be incorporated into the DictionaryAdapter, there will
> be some more cleanup we'll be able to do (such as the AssemblyName to
> Assembly cache that is not needed anymore)
>
>
>
>
>
>
> --
> Ken Egozi.
> http://www.kenegozi.com/blog
> http://www.delver.com
> http://www.musicglue.com
> http://www.castleproject.org
> http://www.idcc.co.il - הכנס הקהילתי הראשון למפתחי דוטנט - בואו בהמוניכם
>
> --
> You received this message because you are subscribed to the Google Groups
> "Castle Project Development List" group.
> To post to this group, send email to [email protected]
> .
> To unsubscribe from this group, send email to
> [email protected]<castle-project-devel%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/castle-project-devel?hl=en.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Castle Project Development List" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/castle-project-devel?hl=en.

Reply via email to