我正在研究.NET多文件程序集。在多文件程序集的上下文中,本书指出:
*。在调用代码使用时,CLR按需加载netmodules [不是主模块]
如果我错了,请将我设置在正确的轨道上,但在调用可执行文件时,所有引用的程序集(包括可执行文件的已编译代码)都会加载到内存中,然后由JIT(即时编译器)处理当代码被调用时。我可能误解了上面的引用,但我如何阅读引用的是,作为多文件程序集的一部分的.netmodules在被调用之前不会被加载到内存中。
我是否正确地想到了这一点?
答案 0 :(得分:1)
...但是在调用可执行文件时,所有引用的程序集(包括可执行文件的已编译代码)都会加载到内存中
没有。程序集在需要时加载。如果您不需要程序集(例如,特定语言或任何引用的卫星资源程序集),则不会加载它们。无论何时访问和加载这些程序集的JIT都会完成。作为参考,请通过C#使用Richter的CLR。