2015-11-26 3 views
0

Если у меня есть что-то вроде:Собирает ли сборщик мусора статические классы?

public static class StaticClass 
    { 
     public static int x; 

     public static void Do(int y) 
     { 
      x = y; 
     } 

    } 

Вы не можете создать экземпляр StaticClass, поэтому, когда будет сборщик мусора заботиться о нем?

Будет ли он оставаться в памяти на весь срок службы исполняющего исполняющего приложения?

+0

Он останется в памяти, пока приложение не закроется. – SimpleVar

+0

Если ваше приложение является Asp.net, тогда статическая переменная будет повторно создана в момент повторного использования пула приложений. Кроме того, он останется в памяти до перезапуска/закрытия приложения. –

ответ

0

Будет ли он оставаться в памяти на протяжении всего времени выполнения исполняемого приложения?

Да. Поскольку всегда существует «ссылка» на статический объект, он никогда не получит сбор мусора.

Смежные вопросы