robotR2D2, ну во-первых ты массив конвертируешь в строку, о чем тут выше уже писали, во-вторых у тебя вообще ничего из стека не выходит и этот код показывает лишь то, что спрайт остается висеть в памяти. Судьба вектора и массива остается при этом неизвестной. Но твой пост заставил меня задуматься о том, что либо все объекты остаются ждать сборщика, либо это только объекты отображения ведут себя как-то иначе.
В общем взял Scout и скормил ему такой код
Код AS3:
package {
import flash.display.Sprite;
public class Main extends Sprite {
public var v:Vector.<Sprite>;
public function Main() {
super();
for (var i:int = 0; i < 10000; ++i) {
v = Vector.<Sprite>([new Sprite()]);
}
}
}
}
Как и ожидалось, в первом же кадре были освобождены все 10к массивов. Векторов освобождено 9998, а вот спрайтов всего 2.5к. Остальные 7.5к были собраны сборщиком после нажатия соответствующей кнопочки в скауте.