.NET标准运行时行为

时间:2019-02-28 04:02:54

标签: .net-core runtime .net-standard

我正在移植我的库,这些库以前按.NET框架库的方式按方面进行了细分(例如SystemEx,SystemEx.Data,SystemEx.Configuration)。

在.NET Framework世界中,如果所有这些库都合并到一个整体式库中,则意味着该库将具有大量依赖关系,这将使最终应用程序加载速度变慢,内存消耗增加并通常使其变得更多。麻烦管理(读者:如果有误,请更正此声明)。

但是,在.NET Standard 2.0世界中,所有这些已移植的库现在仅依赖于“ NETStandard.Library”,这是类型代理的固定API,最终在实际运行中使用该库时会进行类型转发。时间。从代码空间的角度来看,所有这些库都具有一个单一的公共依赖关系。结果,我很想将它们全部合并到一个整体库中,以便于Nuget的轻松管理。但是,我不确定这样做的运行时行为/后果。

问题1

.NET Core应用程序中的.NET标准库被使用时,运行时如何执行类型转发?

A-“ JIT类型转发”:仅在需要执行时才加载依赖的框架DLL,否则即使在编译过程中用户库引用了它,也不会加载。 >

B-“加载时类型转发”:.NET Standard用户库中引用的所有依赖框架DLL都是在加载时加载,仅是因为它是用户库的依赖项,即使大多数都不会用于执行应用程序。

C-其他,请提供详细信息。

问题2 :开发.NET标准库是否与采用“整体方法”与“方面分段方法”相关的性能,内存或其他损失?

0 个答案:

没有答案