
Код:
package {
import flash.display.Sprite;
import flash.events.Event;
import flash.events.TimerEvent;
import flash.system.System;
import flash.utils.Timer;
public class Test extends Sprite {
private var a:Sprite;
private var timer:Timer;
function Test():void {
timer = new Timer(10);
timer.addEventListener("timer", timerHandler);
timer.start();
}
private function timerHandler(e:TimerEvent):void {
a = new Sprite();
a.name = '#' + timer.currentCount;
a.addEventListener(Event.ENTER_FRAME, efListner, false, 0, true);
addChild(a);
removeChild(a);
a=null;
}
private function efListner(e:Event):void {
trace(e.currentTarget.name, (System.totalMemory/100000).toFixed(1));
}
}
}
моя версия доказательства работы GC - больше 2000 экземпляров одновременно в памяти не зависает
но вот заставить GC сработать когда я этого захочу (двойным LocalConnection()) мне не удалось :~/