9.0.115 버젼에서
flash.system.System.gc() 메소드가 추가되었다.
이 메소드의 작동 요건은
ADL(AIR 디버깅), installed application(설치된 AIR),
또는 content in application security sandbox 라고 하는데
이건 아마 로컬에서 실행되는 상태라고 이해할 수 있을거 같다.
기존의 가비지 컬렉터의 주기를 기다리지 말고
System.gc() 를 마음껏 날려주자.
GarbageCollector.mxml -
소스 다운로드 (air 파일 포함)
flash.system.System.gc() 메소드가 추가되었다.
이 메소드의 작동 요건은
ADL(AIR 디버깅), installed application(설치된 AIR),
또는 content in application security sandbox 라고 하는데
이건 아마 로컬에서 실행되는 상태라고 이해할 수 있을거 같다.
기존의 가비지 컬렉터의 주기를 기다리지 말고
System.gc() 를 마음껏 날려주자.
GarbageCollector.mxml -
소스 다운로드 (air 파일 포함)
'Adobe AIR > 팁 & 노하우' 카테고리의 다른 글
[AIR] AIR Badge 와 air.swf Sequence Diagram (6) | 2008.04.28 |
---|---|
[AIR] Interactive Fullscreen on AIR. (3) | 2008.03.17 |
[AIR] System.gc() 를 이용한 메모리 반환. (1) | 2008.03.03 |
[AIR] JPEG JFIF Marker (3) | 2008.02.19 |
[AIR] AIR Beta 3 개발하기 위한 준비 Flash CS 3 (6) | 2008.01.15 |
[AIR] AIR 를 시작하는 분들을 위한 참고사이트들. (4) | 2007.11.05 |
-
지돌스타 2009.02.13 16:02
가비지 컬렉터들을 System.gc()로 날려줄 수 있는 환경은 AIR와 Flash Player Debug 환경일때만 가능하며 Flash Player Release버전은 안되는 걸로 알고 있습니다. FP Release버전에서는 System.gc()를 써도 무시되죠.
근데 왜 그렇게 했을까요? 그건 포퍼문스 문제때문이 아닐까 생각합니다. GC가 생성되자 마자 메모리에서 바로바로 지워주는 것은 제가 생각하기에 전체 포퍼먼스를 죽이는 결과를 주지 않을까 생각합니다. 그래서 System.gc()는 꼭 필요할때만 써야할 것 같아요. 예를들어 메모리를 엄청 먹는 프로세스가 진행이 완료되었을때 바로 메모리 반환하기 위해서요. ^^