Hi,
Just want to know whether a new instance of CLR is
started for each .net application or a single instance of
CLR manages the execution of all .net applications on a
machine?
Regards,
Faraz
Jon Skeet [C# MVP] - 05 Oct 2003 17:44 GMT
> Just want to know whether a new instance of CLR is
> started for each .net application or a single instance of
> CLR manages the execution of all .net applications on a
> machine?
At the moment, a new instance of the CLR is used for each explicitly
invoked application, although services may well share a single CLR (I
don't rightly know, to be honest). I would expect this to change over
time though - one of the reasons for the whole AppDomain business is so
that a single CLR *could* host many different applications.

Signature
Jon Skeet - <skeet@pobox.com>
http://www.pobox.com/~skeet
If replying to the group, please do not mail me too
Willy Denoyette [MVP] - 06 Oct 2003 21:02 GMT
Actually, the CLR is not really managing applications, it just creates a VM environment within a Win32 process for managed code. The
CLR is loaded and initialized at application start-up time, that means that each managed application process has his own copy of the
CLR loaded.
Note I'm talking about current supported versions of the OS and CLR, it's possible that upcoming versions of Windows OS could move
whole or a part of the CLR to OS space.
Willy.
> Hi,
>
[quoted text clipped - 5 lines]
> Regards,
> Faraz
Conrad Zhang - 14 Oct 2003 08:02 GMT
Each managed application will loads its own copy of CLR. Sharing of CLR is
done at OS level (basically LoadLibrary()).
> Hi,
>
[quoted text clipped - 5 lines]
> Regards,
> Faraz