[Mono-dev] PATCH: Bug #76757, new AppDomains inherit current loaded assemblies

Brian Crowell mono-devel at fluggo.com
Sun Jun 18 16:00:49 EDT 2006


Ben Maurer wrote:
> That code had a large impact on xsp performance. It may be worthwhile to
> measure this before deciding if the quick fix of disabling that code
> path is acceptable.

Unfortunately, any fix will reduce the performance of cross-domain calls, 
because on every call you have to determine whether an acceptable target is 
available or whether a new assembly needs to be loaded. That involves a lot of 
table lookups and string comparisons.

I can think of two ways of reducing the impact of the fix:

* Design the code to perform the target lookup once per domain. For example, if 
one domain makes calls to several others, create one invoke-wrapper for the 
caller, one dispatch-wrapper per target domain, and cache the pointer to the 
dispatch wrapper in the calling domain (per, say, CrossAppDomainChannel).

* Reduce the number of cross-domain calls.

--Brian



More information about the Mono-devel-list mailing list