Стоит ли проводить очищение группы юнитов перед тем как её уничтожать, дабы не было утечек?

Принятый ответ

Проверил на 1.26
Списки юнитов остаются на месте, однако их заголовок ломается, якобы освобождая ячейку, ссылки на участников группы считаются стертыми. Получается, можно и не чистить список перед уничтожением. Просто в памяти адрес остается висеть, но может быть затерт, если заголовок гговорит, что тут никого нет (после дестроя именно так).
Вопрос не связан с самим существованием юнитов внутри группы после смерти, они вроде как не удаляются, я точно один раз лечил зависание мертвых иллюзий в списках.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
2
27
6 лет назад
Отредактирован MpW
2
не надо. основные утечки: это объекты и необнуленные локалки. группа эта как автобус, а пассажиры автобуса - юниты, при удалении удаляешь автобус с пассажирами, если ли смысл чистить группу перед удалением тогда? это же не спасательная операция или это вместо автобуса можно представить как таблицу. по идее нативка Destroy сама удалять и подчищать
2
16
6 лет назад
2
Надо, группы не чистятся при уничтожении автоматически
0
27
6 лет назад
0
DracoL1ch, откуда ты это знаешь?
3
16
6 лет назад
3
список юнитов остался висеть в памяти после дестроя группы. Не, ну, возможно, к нему сборщик мусора через пару минут заходит, я не ждал. Можешь попробовать группировать бесконечно в новые группы и разрушать их, глянешь, будет память расти или нет
0
12
6 лет назад
0
Интересный вопрос однако.Обычо группы перед их уничтожением никто не чистит.
Посмотрите наработки : там просто DestroyGroup(g);set g = null.По идеи как должно само очищаться тогда.
Я проводил yнекотороные тесты: удалиться ли удаленый юнит из группы в которой он находился и да он удалялся.Именно удаленый юнит через RemoveUnit(),на счет умерших не знаю, по идеи они тоже должны удаляться из групп после разложения
4
21
6 лет назад
Отредактирован Raised
4
В 1.29+ утечки хендлов и не только, возможно, пофиксят. Но скорее всего, этим займутся правнуки нынешних разработчиков.
0
13
6 лет назад
0
По идеи как должно само очищаться тогда.
мб ни кто не проверял? я бы проверил, но не умею, решил что тут кто-то этим занимался
1
26
6 лет назад
1
Создаёте виспа, закидываете в группу, убиваете виспа... висп умирает без разложения
Запускаем форгроуп и смотрим получил ли он обращение в виспу
Запускам сразу при смерти, потом через 0.00, и спустя N сек.
0
13
6 лет назад
0
Extremator, и что? этим мы проверим удаляется ли юнит из групп когда юнит исчезает. А задача узнать очищается ли уничтоженная группа без создания утечек.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.