gpt4 book ai didi

c# - 使用反射加载程序集时的内存管理

转载 作者:太空宇宙 更新时间:2023-11-03 14:10:34 24 4
gpt4 key购买 nike

全部,

我正在创建一个使用复合模式的组件。核心组件使用 XMl 元数据来定义复合 Material (部件)。在运行时,核心组件会使用反射将零件装配加载到内存中并调用方法(例如 IPart.execute 方法)。

现在我的问题是

1) 当我处理或不处理对象时,使用反射加载的程序集占用的(动态)内存是否会被卸载。

2) 如果它没有卸载并释放内存,有什么方法可以将它从内存中删除。

这个问题的原因是,我正在构建的组件将是我的企业应用程序业务层的核心,可以大量定制。

谢谢阿尔伯特·阿鲁尔·普拉卡什

最佳答案

我见过人们在另一个应用程序域中通过反射加载额外的库(我们可以称这些库为“插件”)。例如,请参阅这篇文章:http://adrianvintu.com/blogengine/post/Unloadable-plugins.aspx

这样你就可以免受“邪恶”插件的侵害,并且可以在这样的应用程序域中管理内存(当应用程序域卸载时,内存也会被释放)

关于c# - 使用反射加载程序集时的内存管理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8007061/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com