Сборщик мусора и объекты указывающие друг на друга
От:
Аноним
Дата:
26.09.09 20:14
Оценка:
Есть классы А и Б, в классе А есть свойство типа Б, а в классе Б — типа А. Создаются эти самые объекты и..
что будет делать сборщик мусора в таком случае? Когда будут удалены (и будут ли) эти объекты?
Re: Сборщик мусора и объекты указывающие друг на друга
Здравствуйте, <Аноним>, Вы писали:
А>Есть классы А и Б, в классе А есть свойство типа Б, а в классе Б — типа А. Создаются эти самые объекты и.. А>что будет делать сборщик мусора в таком случае? Когда будут удалены (и будут ли) эти объекты?
После того, как станут недоступны из корней GC.
... << RSDN@Home 1.2.0 alpha 4 rev. 1238>>
Re: Сборщик мусора и объекты указывающие друг на друга
Здравствуйте, Аноним, Вы писали:
А>Есть классы А и Б, в классе А есть свойство типа Б, а в классе Б — типа А. Создаются эти самые объекты и.. А>что будет делать сборщик мусора в таком случае? Когда будут удалены (и будут ли) эти объекты?
Re[2]: Сборщик мусора и объекты указывающие друг на друга
От:
Аноним
Дата:
27.09.09 13:08
Оценка:
Здравствуйте, anton_t, Вы писали:
_>Здравствуйте, <Аноним>, Вы писали:
А>>Есть классы А и Б, в классе А есть свойство типа Б, а в классе Б — типа А. Создаются эти самые объекты и.. А>>что будет делать сборщик мусора в таком случае? Когда будут удалены (и будут ли) эти объекты?
_>После того, как станут недоступны из корней GC.
А как они станут недоступны, если они будут всегда указывать друг на друга?
Re[3]: Сборщик мусора и объекты указывающие друг на друга
Здравствуйте, Аноним, Вы писали:
_>>После того, как станут недоступны из корней GC. А>А как они станут недоступны, если они будут всегда указывать друг на друга?
Лучше подумать на тему, как сборщик мусора их вообще сможет найти...
Если у Вас нет паранойи, то это еще не значит, что они за Вами не следят.
Re: Сборщик мусора и объекты указывающие друг на друга
Здравствуйте, Аноним, Вы писали:
А>Есть классы А и Б, в классе А есть свойство типа Б, а в классе Б — типа А. Создаются эти самые объекты и.. А>что будет делать сборщик мусора в таком случае? Когда будут удалены (и будут ли) эти объекты?
Сборщик мусора может никогда не удалить объект, на которой нет вообще никаких ссылок (если в приложении никогда не возникнет нехватки памяти).
А может удалить объект ещё в процессе выполнения его экземплярного метода.
Re[3]: Сборщик мусора и объекты указывающие друг на друга
Здравствуйте, <Аноним>, Вы писали:
А>Здравствуйте, anton_t, Вы писали:
_>>Здравствуйте, <Аноним>, Вы писали:
А>>>Есть классы А и Б, в классе А есть свойство типа Б, а в классе Б — типа А. Создаются эти самые объекты и.. А>>>что будет делать сборщик мусора в таком случае? Когда будут удалены (и будут ли) эти объекты?
_>>После того, как станут недоступны из корней GC.
А>А как они станут недоступны, если они будут всегда указывать друг на друга?
Они не являются корнями gc, поэтому не важно, указывают они друг на друга или нет. gc в .net немного умнее boost::shared_ptr или пхпешного gc, поэтому тут не о чем беспокоиться.