Вопрос о статических объектах .net - PullRequest
4 голосов
/ 26 июля 2011

Значения статических переменных одинаковы в течение одного сеанса или их значения одинаковы на уровне сервера приложений?

Ответы [ 3 ]

11 голосов
/ 26 июля 2011

Они находятся на уровне AppDomain - это одинаково для всех статических переменных, независимо от того, находятся они в ASP.NET или нет.

Итак:

  • Есливы используете один и тот же класс из разных доменов приложений, вы получите отдельные переменные
  • Если ваш домен приложений будет переработан, вы получите отдельные переменные
  • Если два запроса будут отправлены на разные машины, вы получитеполучить отдельные переменные
  • Если два одновременных запроса попадают в один и тот же домен приложений, они могут связываться друг с другом (поэтому такие вещи, как count++ небезопасны)
0 голосов
/ 26 июля 2011

Переменная будет оставаться в памяти до перезапуска приложения.

0 голосов
/ 26 июля 2011

Я думаю, что пока процесс iis существует, статическая переменная будет хранить свое значение

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