Всех приветствую. Исследуя свойства различных объектов типа handle проводил проверки на их полную удаляемость (например, если id нового объекта повторялся с id предыдущего объекта, я считал данный результат проявлением так называемой "удаляемости"). Такой логике подчинялись юниты, предметы, разруш. объекты и т.д., что удивило - даже хэш-таблицы, события, условия и действия триггеров. ID для новых объектов перезаписывался, что для меня говорило о высвобождении памяти в игре, но столкнулся с такими объектами, которые якобы удаляются функциями, но оставляют след по себе, такие как: звук, задание и деформация земли (что, удивительно, тоже объект). Они не удаляются полностью, так как за собой оставляют id. Даже деформации земли после загрузки сохранения игры в памяти не очищаются (хотя их графическая составляющая исчезает, если они временные).
Вопрос: существует ли способ удаления этих объектов с последующей очисткой ячеек памяти, которые были ими заполнены?
P.S.: на данные объекты в коде ничего не ссылается, объявляемые локальные переменные очищаются.
Вопрос: существует ли способ удаления этих объектов с последующей очисткой ячеек памяти, которые были ими заполнены?
P.S.: на данные объекты в коде ничего не ссылается, объявляемые локальные переменные очищаются.
Принятый ответ
Какие-то объекты могут создавать зависимости, осовбожегние хендла не значит, что объект чисто удален. В целом это всё уже из области псевдопрограммирования - не стоит волновться о таких мелочах. Create & Destroy работают достаточно хорошо. И да, объекты это все agent
type agent extends handle all reference counted objects
type agent extends handle all reference counted objects
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
type agent extends handle all reference counted objects
на форуме вроде темы были про неё