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

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

谢谢。

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

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

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

编辑:

这是另一篇可能有助于澄清事情的post。

大多数情况下,它将由您的操作系统限制定义。 您的x86机器在内存中不能使用超过4GB的进程[在用户模式下只有2GB]。 如果你选择x64,你有更大的限制。 据我所知,您可以创建的应用程序域数量没有限制。