Здесь нет "утечки"; это просто ожидаемое поведение. Да, все, что доступно через поле stati c, не будет собираться G C, но обычно это правильно с точки зрения какого-то глобального состояния. Под «утечкой» мы обычно подразумеваем неожиданное или необъяснимое удержание памяти. Наиболее распространенный сценарий - это stati c events , которые звучат как отличная идея, но позволяют очень легко поддерживать в рабочем состоянии целые сегменты давно избыточных объектов. Например:
SomeType.SomeStaticEvent += obj.HandleTheThing;
, что теперь означает, что объект из obj
теперь сохраняется навсегда (или, по крайней мере, до тех пор, пока делегат не будет явно удален из события), и все, что может видеть obj
: теперь сохраняется навсегда, et c.
В случае, показанном в вопросе, нет даже каких-либо объектов - только целое число. Я не думаю, что вам нужно беспокоиться о стоимости сохранения целого числа в течение всего периода существования домена приложения, особенно если ваш домен приложения требует , чтобы это целое число было известно в течение этого времени.
Меня больше беспокоят такие вещи, как параллелизм - означает ли это «несколько текущих пользовательских станций» или детали низкого уровня, такие как изменчивость и использование регистров полей.