Удаление динамических ресурсов: ResourceFree

Функция ResourceFree удаляет ранее созданный динамический ресурс и освобождает занятую им память. Если не вызвать функцию ResourceFree, динамический ресурс останется в памяти вплоть до конца текущего сеанса работы терминала. Это можно использовать как удобную возможность хранения данных, но при штатной работе с изображениями рекомендуется освобождать их по факту исчезновения необходимости в них.

Графические объекты, привязанные к удаляемому ресурсу, будут отображаться правильно и после его удаления. Но вновь создаваемые графические объекты (OBJ_BITMAP и OBJ_BITMAP_LABEL) уже не смогут использовать удалённый ресурс.

bool ResourceFree(const string resource)

Имя ресурса задается в параметре resource и должно начинаться с "::".

Функция возвращает признак успеха (true) или ошибки (false).

Функция удаляет только динамические ресурсы, созданные данной MQL-программой, но не "чужие".

В предыдущем разделе мы видели пример скрипта ARGBbitmap.mq5, который вызывал ResourceFree по завершению своей работы.