我正在从事的项目将为大量类生成代码——预计会有数百到数千个。在生成时不知道这些类中有多少会被实际访问。
生成的类可以 (1) 全部存在于单个程序集(或可能是少数程序集)中,当脚趾消耗过程开始时将加载该程序集。
...或者 (2) 我可以为每个类生成一个程序集,就像 Java 将每个类编译为一个*.class
二进制文件一样,然后提出一种机制来按需加载程序集。
问题:哪种情况会产生更好的(内存和时间)性能?
我的直觉是,对于案例 (1),加载时间和使用的内存与构成单个整体程序集的类的数量成正比。OTOH,案例 (2) 有其并发症。
如果您知道有关加载程序集内部的任何资源,尤其是调用了哪些代码(如果有的话!?)以及分配了哪些内存(新加载程序集的簿记),请分享它们。