(Я не уверен в этом, но ...)
AS3 использует недетерминированную сборку мусора, что означает, что разыменованная память будет освобождаться всякий раз, когда среда выполнения считает нужным (обычно, если нет причины для запуска, поскольку выполнение этой операции является дорогостоящей). Это тот же подход, который используется большинством современных языков сбора мусора (например, C # и Java).
Предполагая, что нет других ссылок на память, на которую указывает byteArray
или на элементы в самом массиве, память будет освобождена в какой-то момент после выхода из области, в которой byteArray
объявлено.
Вы можете принудительно выполнить сборку мусора, хотя на самом деле этого делать не нужно. Если да, то делайте это только для тестирования. Если вы сделаете это в производственной среде, производительность будет гораздо меньше, чем пользы.
Чтобы принудительно создать сборщик мусора, попробуйте (да, дважды):
flash.system.System.gc();
flash.system.System.gc();
Вы можете узнать больше здесь .