|
액션스크립트 |
[1] |
|
등록일:2008-04-15 17:08:17 (0%) 작성자: 제목:Flex 2 (Flash Player 9)의 메모리 관리 |
|
아래는 현재 프로젝트에서 발생한 문제점을 해결하기 위해 검색하여 찾은 정보를 정리한 것이다.
[GC의 수행 조건] 1. 고정 크기 메모리 블록의 chunk 단위로 OS의 메모리를 할당/해제 2. chunk의 집합이 Flash의 Memory Pool(JVM의 Heap과 같은 개념)이 됨 3. 객체 생성시마다 Pool에서 메모리를 할당 받음 4. 할당시 Pool이 바닥나면 GC 수행 5. GC는 4번 이벤트 시점에만 수행됨(!)
[GC 수행 규칙] 1. Java와 동일하에 Reference Count로 GC 대상을 분류함 2. 한 번의 GC 수행이 모든 GC 대상을 collect 하는 것은 아님(!) 3. GC 후 chunk를 정리하여 사용율 0인 chunk는 OS로 반환함
[Memory Leak 문제] 1. GC 자체의 Memory Leak 버그는 입증된 바 없음 2. EventListener의 reference 규칙을 이해하지 못하면 leak 위험성 상존
[Memory Leak의 해결] 1. EventListener에 의한 leak 해결방법은 정확한 이해와 함께 weak reference를 적극/정확히 사용하는 것 2. Flex 자체 제공 컴포넌트 일부에서도 leak를 유발한다고 함.
[요약] 1. GC 자체는 버그가 없다고 볼 수 있으나 애매한 작동 방식은 각종 FUD의 원인이 됨. 2. Memory Leak를 일으킬 수 있는 케이스에 대해 반드시 숙지하고 개발해야 함
출처 : http://crosscutter.info/tag/leak |
[본문링크] Flex 2 (Flash Player 9)의 메모리 관리
|
[1]
|
|
|
|
|
코멘트(이글의 트랙백 주소:/cafe/tb_receive.php?no=7415 |
|
|
|
|
|
|
|
|
|
Copyright byCopyright ⓒ2005, SSISO Community All Rights Reserved.
|
|
|