TimerCallBack, содержащий ссылку

Объект Blockquote TimeCallBack ссылается на объект CacheExpires и находится на одном из путей от BASE_RATE_SRCE_CODEInfo[] до корня GC.

Я проанализировал приложение C# с помощью профилировщика памяти и обнаружил, что уцелевшие объекты BASE_RATE_SRCE_CODEInfo[] рефренируются объектами TimerCallBack. Эти объекты BASE_RATE_SRCE_CODEInfo[] не удаляются сборщиком мусора, что может быть возможной причиной утечки памяти.

Итак, как удалить или удалить эти ссылки BASE_RATE_SRCE_CODEInfo[] на TimerCallback в корне GC?


person OZIE    schedule 10.06.2013    source источник


Ответы (1)


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

Чтобы лучше понять конструктор таймера (объекты), посетите: http://msdn.microsoft.com/en-us/library/ah1h85ch.aspx

person MOZ    schedule 07.10.2013