Russian subtitles

← 04-05 Демонстрация использования Heap Viewer

04-05 Heap_Viewer_Walkthrough

Get Embed Code
13 Languages

Showing Revision 10 created 01/26/2016 by sp16.

  1. Чтобы получить больше информации
  2. о состоянии памяти и об объектах,
  3. которые занимают пространство, можно
    воспользоваться инструментом Heap Viewer.
  4. Heap Viewer показывает,
  5. какой объём памяти использовался процессом
    в определённый момент времени.
  6. Чтобы следить за дальнейшими действиями,
    запустите Android Studio
  7. и откройте приложение Sunshine
    на подключенном устройстве.
  8. Для запуска Heap Viewer необходимо
    вначале запустить Android Device Monitor,
  9. что можно сделать различными способами.
  10. Это можно сделать через меню инструментов,
    выбрав Tools > Android
  11. и запустив Android Device Monitor.
  12. Или можно нажать на этот стильный
    значок Android в панели инструментов.
  13. Так и сделаем.
    Запускаем Android Device Monitor.
  14. Нажимаем на вкладку DDMS.
  15. Утилита Heap Viewer является
    одним из инструментов DDMS,
  16. а мы перейдем к левой части.
  17. Здесь выбираем то приложение,
    для которого хотим создать профиль,
  18. поэтому выбираем Sunshine,
    а я передвину эту панель вот сюда.
  19. Итак, теперь, когда мы выбрали Sunshine,
    нам следует перейти на вкладку Heap,
  20. чтобы получить дополнительную информацию.
  21. Возможно, вначале вы не увидите многого,
    но здесь есть небольшая подсказка сверху,
  22. где сказано: «Обновление памяти происходит
    каждый раз после выполнения сборки мусора
  23. для данного клиента.»
  24. Давайте нажмём на эту кнопку и
    инициализируем СМ, чтобы обновить данные.
  25. Ого, смотрите.
  26. Появилось множество новой информации.
  27. Теперь в таблице показываются те данные,
    которые доступны в текущий момент
  28. и находятся в динамической памяти.
  29. Чтобы получить более подробные сведения,
    выберите конкретный тип данных.
  30. Я нажму на этот объект класса.
  31. Вы видите, теперь в панели снизу
    отображается целый ряд данных.
  32. Здесь показана диаграмма выделения памяти,
  33. а также конкретный объём памяти для
    данного типа данных.
  34. В нашем случае это объект класса.
  35. Heap Viewer очень удобен
    для просмотра того,
  36. какие типы объектов были выделены
    вашим приложением,
  37. а также их количества и
    размеров в динамической памяти.
  38. Ещё раз, здесь мы видим итоговые размеры
  39. для конкретных типов объектов в памяти.
  40. Например, в памяти сейчас размещено
    более 1400 двубайтовых массивов,
  41. которые занимают около 120 килобайт.
  42. В то же время, имеется всего
    27 однобайтовых массивов,
  43. и они занимают около двух мегабайт.
  44. Итак, Heap Viewer очень удобен
    для просмотра тех типов объектов,
  45. которые создало ваше приложение.
  46. А также их количества и
    соответствующих размеров в памяти.
  47. Например, если мы посмотрим сюда,
  48. мы увидим, что имеется 27 однобайтовых
    массивов, занимающих около 2 мегабайт.
  49. Также имеется
  50. около 2000 4-байтовых массивов,
    занимающих около 228 килобайт.
  51. Эта информация окажется очень полезной,
    когда вы будете пытаться найти
  52. утечки памяти.