GC & Events

Недавно прочитал книгу Under the Hood of .Net Management от компании Red Gate и хочу всем ее посоветовать к прочтению, так как написана она очень доступно и хорошо, с картинками, примерами и рекомендациями. Вообще тема управления памятью в .Net достаточно интересна и познавательна, но в большинстве ресурсов описание ее идет с какими-то неимоверными сложностями или же с недостаточно наглядными примерами, на мой взгляд. Отчего не остается в голове цельной картины как же все работает в теории, так как авторы книги признаются, что нет точного описания управления памятью и того как сборщик мусора выполняет свою работу. Есть общие положения и структуры, но все остальное очень сложное и в 99,999% случаев не требуется знать всю начинку и как-то подсказывать сборщику мусора как работать. Т.е. в применении к сборщику мусора справедливо высказывание «помогать – только портить».

Итак, по мотивам книги хочу коротко пересказать как работает сборщик мусора, как авторы советуют писать метод Dispose() и некоторые мои соображения и эксперименты с событиями (которые event) в этом ключе.

Подробнее