|
Как поведёт себя сборщик мусора, если есть изолированный цикл ссылок объектов?
|
|||
---|---|---|---|
#18+
Как поведёт себя сборщик мусора, если есть объекты с циклическими ссылками (т. е. ссылающиеся друг на друга), но сами на сам этот цикл объектов больше никто не ссылается? Удалит весь цикл или оставит весь? Если оставит, то как сделать так, чтобы удалил? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2014, 14:55 |
|
Как поведёт себя сборщик мусора, если есть изолированный цикл ссылок объектов?
|
|||
---|---|---|---|
#18+
Следует читать авторКак поведёт себя сборщик мусора, если есть объекты с циклическими ссылками (т. е. ссылающиеся друг на друга), но сами на сам этот цикл объектов больше никто не ссылается? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2014, 14:57 |
|
Как поведёт себя сборщик мусора, если есть изолированный цикл ссылок объектов?
|
|||
---|---|---|---|
#18+
user7320но на сам этот цикл объектов больше никто не ссылается? Т. е. из другой части объектов моего приложения (из основной кучи) больше нет ссылок на любой объект из цикла ссылок. Есть какие-то "главные" объекты, по которым сборщик судит, на что они ссылаются? Т. е. если эти главные объекты не ссылаются на какие-то группы объектов, пусть даже эти группы сами друг на друга ссылаются, то эти группы можно удалить. Или сборщик не удаляет даже ЛЮБЫЕ ДВА ЦИКЛИЧЕСКИ СВЯЗАННЫХ объекта? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2014, 15:00 |
|
Как поведёт себя сборщик мусора, если есть изолированный цикл ссылок объектов?
|
|||
---|---|---|---|
#18+
Не удаляет. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2014, 16:09 |
|
Как поведёт себя сборщик мусора, если есть изолированный цикл ссылок объектов?
|
|||
---|---|---|---|
#18+
user7320, сборщик мусора сначала определяет какие объекты достижимы (используются), а какие нет. Поиск начинается с т.н. корней - статические и локальные переменные, аргументы функции и регистры процессора. Следовательно объекты из твоего примера будут удалены как и любые другие объекты без циклических ссылок. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2014, 16:22 |
|
Как поведёт себя сборщик мусора, если есть изолированный цикл ссылок объектов?
|
|||
---|---|---|---|
#18+
bazileuser7320, сборщик мусора сначала определяет какие объекты достижимы (используются), а какие нет. Поиск начинается с т.н. корней - статические и локальные переменные, аргументы функции и регистры процессора. Следовательно объекты из твоего примера будут удалены как и любые другие объекты без циклических ссылок. Т. е. "изолированные циклы" тоже удаляются? Было бы слишком глупо оставлять в памяти объекты вида A <---> B которые больше ни с какими другими объектами не связаны. Я бы хотел более умного сборщика мусора, чтобы он анализировал более глубокие уровни связей, чем один (уровень). ... |
|||
:
Нравится:
Не нравится:
|
|||
15.02.2014, 16:38 |
|
|
start [/forum/topic.php?fid=20&tid=1403265]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
53ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 162ms |
0 / 0 |