Добавлен scopterectus
Обязательно ли очищать хеш-таблицу через FlushChildHashtable(...)? Смотрел на сайтах wc3c.net, hiveworkshop.com разные наработки и нигде не увидел данную функцию, в то время как на этом сайте её всё же используют.
Принятый ответ
Говоря прямо о вопросе треда, замечу, что FlushChildHashtable стоит применять перед сохранением данных в хэш-таблицу при условии, что в конкретной ячейке таблицы гипотетически что-то может находиться (i.e. данные в неё кладутся БЕЗ использования GetHandleId).
бояться утечек нечего
Просто в качестве примера: я где-то встречал огромную систему динамического изменения текстур террейна посредством уберсплатов, которая при определённых условиях с достаточно большой скоростью выпиливала старые и создавала новые; в этой системе уберсплаты не утекали, но, случись такое, выделенные 2 гига оперативы кончились бы относительно быстро.
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Там где единожды записанные данные используются все время до конца игры нет нужды очищать таблицу, ну а так где 1 раз за всю игру, разумеется стоит очищять.
Темболее сейчас часто используют наработки вроде TimerUtils и структур vJass, а там записть только 1 целого числа и удаление его RemoveSavedInteger (или как то так, я уже и забыл)
Ред. scopterectus
а где хранится тип handle, то обязательно удалять? иначе будет утечка?
Ред. nvc123
Ред. Clamp
Тем не менее, возможность создавать что-то локально без приведения к десинхронизации никак не говорит о том, что такие объекты не могут вызывать т.н. "утечек".
DracoL1ch:
Ред. Clamp
Ред. Clamp
Ред. Clamp