매번 다시 객체를 생성하고 그리는 차트가 있다.

render 할 때마다 모든 요소를 지우고 다시 그린다.

그럴때마다 gc 가 일어나게 된다.

gc 가 일어나게되는 원인

  1. dom 을 16000개 생성하고 dom 트리에서 지운다. 그리고 그 dom 을 다시 사용하지 않는다.
  2. dom 을 생성한 객체를 지우고 다시 사용하지 않는다.
  3. 좌표 정보를 가지고 있는 polygon 객체를 생성하고 다시 사용하지 않는다.

무수히 많은 자원을 매번(이벤트가 발생할때마다) 지웠다 생성했다가 반복한다.

그렇다면 어떻게 해야할까?

  • dom 을 지우지 않는다.
  • dom 을 생성한 객체를 지우지 않고 속성만 변환시킨다.
  • 최초 생성된 Polygon 데이타를 그대로 유지한다.
  • 변환된 결과값만 다른 곳으로 저장해서 사용한다.

results matching ""

    No results matching ""