Будет ли это дерево приложений собираться мусором? - PullRequest
2 голосов
/ 24 ноября 2011

В моем корне композиции приложения создается большое дерево экземпляров, в котором родительские узлы могут неявно ссылаться на дочерние узлы, например, на делегатов и наблюдателей.Это упрощенное представление отношений управляемых объектов:

A    <---+
  B    | |
  C  - + |
  D      |
E        | <-+
  F  ----+   |
  G          |
    I -------+  

Я догадываюсь, что если у меня в корне композиции есть ссылки на объекты A и E, а затем для них задано значение NULL, полное дерево объектовбыть мусором.

Правильно?

1 Ответ

3 голосов
/ 24 ноября 2011

Это правильно, учитывая, что у вас нет других достижимых ссылок на узлы в дереве.Это связано с тем, что недостижимые объекты, ссылающиеся друг на друга, по-прежнему имеют право на сборку мусора, если нет внешних (то есть достижимых) ссылок ни на один из них.

...