Привет, All!
Пришлось тут ковыряться с мемори ликами, основной причиной которых были неотписанные обработчики событий.. Причем такая весьма хитрая зависимость получилась, готовые компоненты одной известной фирмы подписывались на события некоторого глобального объекта в конструкторе, а отписывались в Dispose, а Dispose-то я не вызывал
С Dispose я конечно сам виноват, но все-таки хотелось бы разобраться, это нормальная практика или нет? В MSDN написано, что Dispose служит для освобождения неуправляемых ресурсов, а никак не для отписывания от событий. И если забыть позвать Dispose, то вместо ожидаемых каких-то неосвобожденных ресурсов получаем неограниченно висящий в памяти объект, который возможно держит кучу других. Это уже как-то совсем неправильно получается..