Если gc не умеет удалять недостижимые объекты которые между собой образуют циклы, то зачем нужен такой gc?