맨처음에 메모리 측정 - 1

5000 개의 Sprite 객체를 생성해서

변수에 null 을 대입해서

"mark and sweep" 상태로 만들어둔 후

메모리 측정 - 2

System.gc() 호출 후

메모리 측정 - 3

위 1, 2, 3 의 결과는 다음과 같았다.

8716288
10461184
8744960

테스트한 코드는 아래와 같다.

실행방법. 1 frame 에 아래 코드를 붙여놓고 실행한다.


테스트 페이지 : http://www.as3.kr/gc2/

p.s ) 실험방법에 이상한 점이 있을 경우 리플 달아주세요.

[Flash] http://www.as3.kr/gc/GarbageCollectorSWF.swf



안되나?

되네...

-_-??

....!!!

-_-!!!!!

되자나!!

p.s) first 와 last 가 차이나는것은 컴퍼넌트때문에 초기화시간이 걸리는것 같다 -_-

p.s) 안되는 분은 플레이어 업데이트 해주세요.

여러분들의 검토를 부탁합니다 -_- 되는거 맞나? 그럼 초 대박인거 같은데;;


소스 다운로드


9.0.115 버젼에서

flash.system.System.gc() 메소드가 추가되었다.

이 메소드의 작동 요건은

ADL(AIR 디버깅), installed application(설치된 AIR),

또는 content in application security sandbox 라고 하는데

이건 아마 로컬에서 실행되는 상태라고 이해할 수 있을거 같다.

기존의 가비지 컬렉터의 주기를 기다리지 말고

System.gc() 를 마음껏 날려주자.

GarbageCollector.mxml -



소스 다운로드 (air 파일 포함)

+ Recent posts