76 / 73 / 9
Регистрация: 09.06.2010
Сообщений: 206
|
||||||
1 | ||||||
Сборка мусора15.07.2010, 15:34. Показов 2800. Ответов 10
Метки нет (Все метки)
Доброе время суток
Есть такой вопрос, касающийся сборки мусора. Если два объекта (или более, например 100) имеют ссылки друг на друга , но в программе ни на один из этих объектов нет ссылок, вся эта связанная структура удаляется обычным образом сборщиком мусора?
0
|
15.07.2010, 15:34 | |
Ответы с готовыми решениями:
10
Сборка мусора Сборка мусора .NET А будет ли сборка мусора? Увеличение объемов занимаемой памяти и "сборка мусора" |
Padawan
473 / 323 / 30
Регистрация: 30.01.2010
Сообщений: 1,841
|
|
15.07.2010, 16:07 | 2 |
Через некоторый момент, после того, как в программе просходят изменения, сборщик мусора в отдельном потоке проверяет кучу, находит объекты, на которые нет ссылок и освобождает память.
Так что сразу сказать, что объекты удалены нельзя. Но они будут удалены. ИМХО.
1
|
76 / 73 / 9
Регистрация: 09.06.2010
Сообщений: 206
|
|
15.07.2010, 16:20 [ТС] | 3 |
Да, про то что сборка мусора не сразу я помню
Вопрос немного в другом На объекты, на которые ссылались a, b и с, ссылки то вроде как остались (next) от "соседних" объектов. Вот про это спрашиваю. Получается замкнутая структура, на каждый объект есть ссылка внутри этой структуры. Вопрос про это
0
|
Padawan
473 / 323 / 30
Регистрация: 30.01.2010
Сообщений: 1,841
|
|
15.07.2010, 16:27 | 4 |
вопрос с подвохом ) Тут я думаю проверяется доступность объекта извне.
1
|
Заблокирован
|
|
15.07.2010, 16:27 | 5 |
1
|
76 / 73 / 9
Регистрация: 09.06.2010
Сообщений: 206
|
|
15.07.2010, 16:54 [ТС] | 6 |
Про сборщик мусора читал где-то (не помню) что он работает методом подсчета ссылок на объект. Когда количество ссылок становится равно 0, сборщик, при очередном проходе освобождает занятую память.
Т.к. тут явно на каждый объект осталось по 1 ссылке и нет "точки входа для проверки истенности ссылок", они замкнуты, - по этому и возник вопрос.
0
|
Заблокирован
|
|
15.07.2010, 17:18 | 7 |
Не читай больше этого. Оно тебе в прок не идёт.
Сборщик мусора строит граф и ищет есть ли к данному объекту цепочка сильных ссылок от корневой сильной ссылки.
0
|
1319 / 992 / 127
Регистрация: 08.12.2009
Сообщений: 1,299
|
|
16.07.2010, 02:29 | 8 |
хотя в Java, кста, так и сделано в лоб, как написано "там, где тебе читать не надо"
продолжая слова NightmareZ рекомендую почитать про слабые ссылки
1
|
76 / 73 / 9
Регистрация: 09.06.2010
Сообщений: 206
|
|
16.07.2010, 05:59 [ТС] | 9 |
Наверно с java и спутал, неск лет назад занимался этим, потом другие интересы появились
Про ссылки почитаю
0
|
4337 / 1506 / 101
Регистрация: 12.04.2009
Сообщений: 2,342
|
|
16.07.2010, 10:37 | 10 |
0
|
76 / 73 / 9
Регистрация: 09.06.2010
Сообщений: 206
|
|
17.07.2010, 15:59 [ТС] | 11 |
Спасибо всем
Поигрался с WeakReference и GC, да, все удаляется
0
|
17.07.2010, 15:59 | |
17.07.2010, 15:59 | |
Помогаю со студенческими работами здесь
11
Сборщик мусора GC Сборщик мусора .NET C# Существует ли в C# сборщик мусора Библиотека, сборщик мусора Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |