나는 스테이지에서 추가 할 필요가있는이 세 가지 객체를 프로그램의 나중 단계에서 배열에서 추출 할 때 사용합니다.배열에서 인스턴스화
누군가가 저에게 전에 말했기 때문에 var mall: Mall = new Mall();
을 쓸 수 없습니다. 이것은 메모리에있는 객체에 추가되며 많은 객체가 처리되면 정말 좋지 않을 것입니다. 나중에 더 많은 객체를 사용하게 될 것입니다.
그래서 내가 루프 또는 이벤트 리스너를위한 프로그램을 실행할 때 내가 객체의 인스턴스를 만들기 위해하는 AddChild 전화를 자동으로 ... = new object();
을 추가 할 수있는 방법을 알고 싶습니다. 가비지 컬렉션
var mall:Mall;
var library:Library;
var music:Music;
var choices:Array = new Array();
choices.push(mall,library,music);
테스트 코드 :
var waking: WakingUp = new WakingUp();
addChild (waking);
waking.y=-30;
waking.addEventListener (Event.ENTER_FRAME, waking_up);
function waking_up (g:Event){
if (waking.currentFrame == waking.totalFrames)
{
waking.stop();
waking.removeEventListener (Event.ENTER_FRAME,waking_up);
removeChild (waking);
removeChild(alarm_slide);
gotoAndStop (6);
}
}
이이 코드에있는 모든 심판이다, 그것을
제가보기에 : D는 내가 어떻게 refernce를 제거 할 수 있습니까? 그러나 그것이 남아있을 확실한 어떤 물건을 갖게 될 것이기 때문에 그것은 또한 나쁘다. 그래서 나는 어떤 것을 제거 할 것인지 그리고 어떤 것을 제거 할 것인지를 말할 수 없을 것입니다. – tailedmouse
개체에 대한 이벤트 수신기를 제거하고 배열에서 제거합니다. 어떤 것을 제거해야하는지 알 수없는 이유는 무엇입니까? – Montycarlo
아, 그래서 가비지 컬렉터가 청취자를 제거하면 그것을 잡을 수 있을까요? 나는 그것을 무효화 할 필요가 없을 것이다. – tailedmouse