Russian subtitles

← Улучшите свой код чтобы уменьшить количество использованной памяти.

Get Embed Code
20 Languages

Showing Revision 3 created 09/11/2017 by Nicoleta Iliuha.

  1. Мы можем сделать небольшую корректировку нашего кода во избежание чрезмерного использования памяти.
  2. Давайте посмотрим на сравнительный подход.
  3. Вместо того, чтобы соединять значение одной ячейки за раз для постройки каждого ряда, давайте использовать
  4. образец StringBuilder и построим каждый ряд используя одну строку.
  5. Заметьте, что StringBuilder инстанциирован вне цикла и
  6. и таким образом память выделяется лишь раз.
  7. И тогда мы просто используем его как буфер для
  8. каждой итерации цикла, где мы сперва ее чистим, а затем мы добавляем
  9. одну строку чисел для того, чтобы отразить ряд для той итерации цикла.
  10. Посмотрите заметки инструктора где есть детали этого сегмента кода.
  11. Сейчас время проверить все.
  12. Загрузите улучшенную ветку кода,
  13. которая называется memory_churn_optimized, в поле отслеживания
    и в монитор памяти
  14. для того, чтобы подтвердить то, что мы
    уменьшили количество GC в окне короткого времени.
  15. Вы также можете использовать трекер
    выделения для проверки.
  16. Если вы используете трекер или
  17. если вы получили что-то неожиданное
    в поле отслеживания или в мониторе памяти
  18. Поделитесь скриншотом вашего результата
    в форумах для обсуждения.
  19. Нам интересно увидеть что у вас получилось.
  20. Теперь, для нас, даже с этими изменениями
    пират Perf все равно приостанавливается.
  21. Но на этот раз на меньшее время.
  22. Это также может показать что
    эта функция наверное хороший
  23. кандидат на переход на задний план.