Цитата:
Сообщение от Gerbert
То что посоветовал Vreden, это стек, а не пул.
|
Поясните мне, пожалуйста, чем отличается стек от пула?
Цитата:
Сообщение от Gerbert
Это какой-то "безумный" пул, который на одних splice потратит больше, чем при создании объекта.
|

Код AS3:
public function Test()
{
var array:Array = [];
for (var i:int = 0; i < 1000; i++)
array.push(new Sprite());
var time:int = getTimer();
for (i = 0; i < 100000; i++)
{
var sprite:Sprite = array.pop();
array.push(sprite);
}
trace("Crazy array pool", getTimer() - time); //Crazy pool 28mc
time = getTimer();
for (i = 0; i < 100000; i++)
new Shape();
trace("Create simply display object", getTimer() - time); //Create simply display object 368mc
time = getTimer();
for (i = 0; i < 100000; i++)
new Sprite();
trace("Create simply display object container", getTimer() - time); //Create simply display object container 583mc
}
Zebestov, то что нужно, я как раз об этом.
Добавлено через 11 минут
Gerbert, ну и для пущей убедительности:

Код AS3:
time = getTimer();
for (i = 0; i < 100000; i++)
array[50000];
trace("Get index without create object", getTimer() - time); //Get index without create object 15mc
500ms минимум изначальной инициализации пула и оверхеда по памяти, против 13 ms на 100000 объектов в динамическом пуле.
Добавлено через 32 минуты
Цитата:
Сообщение от Gerbert
Чушь если не выставлен флаг в компиляторе.
|
Даже, если вы компилятору прикажете использовать аппаратное ускорение, но при этом вы не используете stage3d, никакого ускорения вы не получите, это всего-лишь эквивалент wmode=direct при встраивании swf объекта на страницу и опция компилятора предназначена скорее для автономных приложений, как еще один способ разрешить использовать ускорение, что не равно "ускорять и все тут"