CLR的类加载服务

时间:2012-11-05 06:10:01

标签: c# clr-hosting

我从谷歌阅读主题,我明白这一点:

  1. Windows加载程序加载.net应用程序的exe或dll。
  2. 然后,Windows加载程序为该进程创建clr。
  3. 然后它将入口点定位到应用程序并调用它。
  4. 但是在clr的类加载器服务出现之前,加载包含Main方法的类。
  5. 然后进行jit编译。
  6. clr为我们的应用程序提供了诸如gc,异常处理,类加载等服务。
  7. 我的问题是:

    现在,当我们运行.net app clr找到入口点并开始执行。但是遇到它时

    Class1 ob = new Class1();  
    

    那个时候我们的进程如何调用称为类加载器的CLR服务? MSIL代码相当于newobj内部调用clr的类加载器服务吗?

1 个答案:

答案 0 :(得分:1)

理解CLR的内部工作需要付出很多努力。但如果您有兴趣,请查看CLR Internal Workings

该网站提供了有关CLR工作的详尽解释。

具体来说,您的答案来自网站的ObjectInstance部分。他们使用了

SmallClass obj = new SmallClass();

解释功能。

希望它有所帮助。