Singleton pattern 으로 객체를 생성했을경우 플래시에서 뜻하지 않은 상황이 발생한다.
플래시에서 Export 한 후 Download simulate 를 하면 알수 없는 이유로 프로그램이 진행이 되질 않는다. 이것은 프로그램의 오류가 아니라 Singleton pattern 에서 인스턴스 참조값을 저장하기 위해 사용한 전역변수가 문제다.
다시말해, 플래시에서 simulate 를 하기 위해서는 Export 한 상태에서 한번 더 Ctrl+ Enter 을 눌러야된다. 이 상황에서 플래시는 메모리에서 전역변수를 소거하지 않고 그대로 남아있는 상태가 된다.
Singleton pattern 에서는 반드시 인스턴스는 단 한번 밖에 생성되지 않는다.
따라서 한번 Export 해서 생성된 인스턴스로 인해 simulate 할경우 원하지 않은 상황이 발생한다.
private static var sInstance:FramePulse = null; public static function getInstance () : FramePulse { if (sInstance == null) { sInstance = new FramePulse(); } return sInstance; }
–> Download 테스트 시 메모리가 소거 되지 않아 전역속성인 sInstance 로 인해 인스턴스를 생성할 수 없다.
Recent Comments