Максимальное количество доменов приложений, загруженных в одном процессе - PullRequest
5 голосов
/ 09 ноября 2010

Поскольку для динамической загрузки сборки требуется загрузка домена приложения, чтобы разрешить уничтожение сборки с помощью выгрузки домена приложения, существует ли в процессе процесс загрузки «максимального» числа доменов приложения? Я имею в виду серверное приложение, в котором каждый пользователь может динамически запускать свой собственный код C #. Но что, если, скажем, 2000 пользователей войдут в систему и загрузят свои коды? Есть ли какие-то возможные ограничения, с которыми я мог бы столкнуться, кроме числа аппдомианцев?

спасибо.

Ответы [ 3 ]

5 голосов
/ 09 ноября 2010

Почти все ограничения CLR основаны на «насколько позволяет память». Единственное исключение, о котором я знаю, - это число членов класса, ограниченное 65536. Это основано на определении значения токена. Ничего подобного для доменов приложений.

5 голосов
/ 09 ноября 2010

Я не верю, что в CLR встроено определенное максимальное значение.Скорее всего, объем оставшейся памяти определяет, можно ли динамически загружать новый домен приложения.

Я проведу небольшое исследование, но я не думаю, что для этого есть значение.

РЕДАКТИРОВАТЬ:

Вот еще один пост, который может помочь разобраться.

1 голос
/ 09 ноября 2010

В основном это будет определяться пределами вашей ОС.Ваша машина x86 не может использовать более 4 ГБ памяти для процесса [только 2 ГБ в режиме пользователя].Если вы переходите на x64, у вас гораздо больший лимит.Из того, что я знаю, нет такого ограничения на количество доменов приложений, которые вы можете создать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...