Показать сообщение отдельно
Старый 11.01.2013, 17:29
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 2  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
7. Убрать _все_ _без исключения_ анонимные функции из проекта - на одном после оной операции потребление памяти упало с 800 до 200 метров. (плюс-минус - я не помню точные цифры уже)

А эти викреференсы - как парашют для экипажа пассажирского лайнера - вроде 2-4 человека спасутся - это лучше, чем все 100 погибнут, но надо ли так мотивировать экипаж спасать пассажиров? Т.е. все эти мягкие ссылки c одной стороны уменьшают пагубные эффекты от утечек, но с другой - маскируют места, где Вы забыли отписаться и возникают уже другие проблемы - со срабатыванием листнера пока его GC не соберёт, хотя он не нужен.

Цитата:
реализовал для всех потенциальных классов интерфейс IDisposable: чистит объекты, при уничтожении родителя
Интересно, как он их чистит? Пример кода просто.

По поводу методов поиска утечек - самый тупой способ - это отключаем подозрительные блоки кода и смотрим что происходит с памятью. Как только получили резкое изменение - начинаем плясать от кода, который отключили.
Например, если есть подозрение, что память течёт из-за объектов на сцене - не надо гадать, просто перестаём их создавать вообще и смотрим что меняется - ничего не меняется? - создаём, но не добавляем на сцену и т.д.