在一个进程中加载​​的最大appdomains数

ali*_*hoo 5 .net c# appdomain dynamic-loading

由于动态程序集加载需要appdomain加载以启用使用卸载相关appdomain来终止程序集,是否在要加载的进程中有"最大"数量的appdomains?我在想一个基于服务器的应用程序,每个用户都可以动态运行他的专有C#代码.但是,如果2000用户登录并加载他们的代码怎么办?除了appdomians的数量之外,我可能遇到任何可能的限制吗?

谢谢.

Han*_*ant 6

几乎所有CLR限制都基于"作为内存允许".我所知道的唯一例外是一个类的成员数,限制为65536.这是基于令牌值的定义.AppDomains没有类似的东西.

  • ASP.NET不会为每个请求创建1个"AppDomain".每个ASP.NET网站基本上是1个.那个'AppDomain`活了很长一段时间,虽然有些条件会自动"回收"它.我不确定SQL Server是做什么的,但是没有为每个查询创建一个新的"AppDomain". (3认同)

Jas*_*ans 5

我不相信CLR内置了最终的最大值.而是剩下的内存量决定了你是否可以动态加载新的appdomain.

我会做一些研究,但我认为没有为此设定价值.

编辑:

这是另一篇可能有助于澄清事情的帖子.