Return to Video

04-05 Heap_Viewer_Walkthrough

  • 0:00 - 0:02
    좋아요, 그럼, 우리 메모리의 상태,
    그리고, 공간을 차지하는
  • 0:02 - 0:03
    오브젝트들에 대한 정보를
  • 0:03 - 0:07
    손쉽게 접할 수 있는 힙 뷰어라고 하는
    유용한 툴이 있습니다.
  • 0:07 - 0:08
    힙 뷰어를 쓰면,
  • 0:08 - 0:09
    어떤 프로세스가 특정 순간에
  • 0:09 - 0:12
    얼마나 많은 메모리를
    사용하는지 알 수 있습니다.
  • 0:12 - 0:15
    저번처럼, 같이 해보기 위해서는,
    안드로이드 스튜디오를 먼저 실행하시고,
  • 0:15 - 0:18
    연결된 본체 전면에
    선샤인 앱을 실행시켜 주세요.
  • 0:18 - 0:19
    힙 뷰어를 시작하려면
  • 0:19 - 0:21
    먼저 안드로이드 디바이스
    모니터를 시작하는데,
  • 0:21 - 0:23
    몇 가지 옵션이 있습니다.
  • 0:24 - 0:30
    한 방법으로는 메뉴에서 도구,
    안드로이드, 안드로이드 디바이스 모니터
  • 0:30 - 0:32
    순서대로 찾아서 눌러주는 방법이 있고,
  • 0:32 - 0:36
    혹은 간편하게, 맨 위의 툴바에 있는
    이 안드로이드 아이콘을 누르면 됩니다.
  • 0:37 - 0:39
    이걸 누르도록 하죠.
    안드로이드 디바이스 모니터가 실행됐고,
  • 0:40 - 0:44
    그 다음엔 DDMS 탭을 클릭하겠습니다
  • 0:44 - 0:46
    힙 뷰어는 DDMS 툴에 해당하는데,
  • 0:46 - 0:48
    이제 이쪽, 좌측을 봐 주세요.
  • 0:48 - 0:52
    프로파일링할 앱을 선택합니다.
    여기서 우리는 선샤인 앱을 선택할 거고
  • 0:52 - 0:56
    여기 이 창을 끌어올려서
    확장해 줍니다.
  • 0:56 - 1:00
    일단 선샤인 앱을 선택했으면
    다음엔 이 heap 탭을 선택해서
  • 1:00 - 1:02
    추가 정보를 얻을 수 있습니다.
  • 1:02 - 1:05
    처음 시작할 때는
    그다지 많은 것들이 보이지는 않지만,
  • 1:05 - 1:09
    여기 위쪽에 작은 메시지를 보면
    "본 클라이언트에서는 모든 GC 후에
  • 1:09 - 1:11
    힙 업데이트가 실행됩니다"
    라고 나오네요.
  • 1:11 - 1:15
    여기를 클릭해서 GC가
    데이터를 업데이트하게 해 보죠.
  • 1:15 - 1:15
    자, 보세요.
  • 1:15 - 1:18
    이렇게 많은 정보가 생성됐죠.
  • 1:18 - 1:21
    힙에 실제로 어떤 데이터가
    살아있고, 사용 가능한지
  • 1:21 - 1:23
    테이블에 업데이트 되었습니다.
  • 1:23 - 1:26
    더 상세한 내용이 보고 싶으면
    싱글 데이터 타입을 선택하면 됩니다.
  • 1:26 - 1:29
    이 클래스 오브젝트를 선택해보죠.
  • 1:29 - 1:32
    이제 아래쪽 창에 많은 데이터가
    업데이트된 걸 볼 수 있습니다.
  • 1:32 - 1:36
    할당 수에 대한 히스토그램과
    해당 데이터 종류가
  • 1:36 - 1:38
    필요로 하는 정확한
    메모리 양을 볼 수 있죠.
  • 1:38 - 1:41
    여기서는 클래스 오브젝트에 대해
    얘기하고 있습니다.
  • 1:41 - 1:43
    힙 뷰어는 해당 앱이
  • 1:43 - 1:46
    어떤 종류의 오브젝트를 할당했는지,
    그리고 그것들이 더미에서 얼마나 많이,
  • 1:46 - 1:51
    어떤 크기를 점하고 있는지를
    가시적으로 보여줄 때 아주 유용합니다.
  • 1:51 - 1:54
    여기서 보이듯이,
    전체 사이즈가 표시돼 있고,
  • 1:54 - 1:56
    어떤 종류인지가 표시돼 있죠.
  • 1:56 - 2:01
    예를 들어 이 더미에는
    1,400개에 달하는 2바이트 배열이
  • 2:01 - 2:04
    약 120킬로바이트를 점하고 있습니다.
  • 2:04 - 2:07
    반면, 1바이트 배열은
    고작 27개 뿐인데
  • 2:07 - 2:11
    거의 2메가바이트를 점하고 있네요.
  • 2:11 - 2:14
    힙 뷰어는 특히 앱이
    어떤 종류의 오브젝트를 할당했는지
  • 2:14 - 2:16
    볼 때 아주 유용하고
  • 2:16 - 2:19
    또한, 더미에서의 수와
    점유하는 크기를 볼 때도 편리합니다.
  • 2:19 - 2:22
    예를 들어, 여기를 보면
  • 2:22 - 2:27
    1바이트 배열 27개가
    약 2메가바이트를 점하고 있습니다.
  • 2:27 - 2:30
    그리고 여기를 보면
    4바이트 배열 약 2천개가
  • 2:30 - 2:34
    현재 228킬로바이트만큼
    데이터를 쓰고 있는 게 보이죠.
  • 2:34 - 2:37
    메모리 누수를 찾을 때,
    이러한 정보는 무척 유용합니다.
Title:
04-05 Heap_Viewer_Walkthrough
Description:

04-05 Heap_Viewer_Walkthrough

more » « less
Video Language:
English
Team:
Udacity
Project:
ud825 - Android Performance
Duration:
02:38

Korean subtitles

Revisions Compare revisions