We have a client app that connects to a number of services on a web
server. When the client initially creates an instance of a proxy class the
runtime emits a dynamic assembly for it.  If I dump the loaded assemblies
in that appdomain I see a number of entries which I believe correspond to
the emitted assemblies. For example, one such assembly is named hxt2vqpt,
its version is 0.0.0.0, its codebase points
to "file://c:/winnt/assembly/gac/system/1.0.3300.0__b77a5c561934e089/system
.dll", and its location contains an empty string. Each time I create an
appdomain and instantiate the proxy classes a different set of these
assemblies gets created.

It takes a second or two to emit each assembly. Our app currently uses 8
services, so the total time it takes to create these assemblies is between
10 to 16 seconds.

I have several questions. First, what, if anything, can be done to speed
this up? All ideas are welcome.

Second, is it possible to ngen these proxies so that the runtime loads and
uses the pre-generated assemblies rather then emit them the first time I
create an instance of the class in an appdomain?  Does this approach have
any merit to it?

Last, where can I find documentation on the process the runtime goes
through when a proxy class is instantiated?

Thanks in advance.

===================================
This list is hosted by DevelopMentor�  http://www.develop.com
You may be interested in Guerrilla .NET, 24 March 2003, in London and Boston
http://www.develop.com/courses/gdotnet

View archives and manage your subscription(s) at http://discuss.develop.com

Reply via email to