Bezdepbonusu7Программирование: статьи и ответы

Почему React 18 повышает производительность

Архив Bezdepbonusu72 мин чтения

В постоянно меняющемся ландшафте React появилась долгожданная версия 18 с новаторским открытием - появлением параллельных функций. Эти трансформирующие элементы знаменуют новую эру в рендеринге приложений React, прокладывая путь к беспрецедентному уровню производительности и эффективности.

Давайте отправимся в увлекательное путешествие, чтобы исследовать глубокое влияние и улучшения, которые эти передовые функции привносят в ваши приложения.

Основной поток и длинные задачи

Суть дела кроется в движке JavaScript, отвечающем за выполнение кода в среде браузера. Этот движок работает в однопоточном контексте, который часто называют уважаемым "основным потоком".

Проходя через код, основной поток не только обрабатывает выполнение JavaScript, но также берет на себя ответственность за управление взаимодействиями с пользователем, такими как клики и нажатия клавиш, обработку сетевых событий и таймеров, обновление анимации и управление переформатированием и перерисовкой браузера.

В области обработки задач в браузерах важным аспектом, который следует учитывать, является необходимость расстановки приоритетов. Когда задача находится в процессе обработки, она привлекает безраздельное внимание браузера, заставляя все остальные задачи терпеливо ждать своей очереди.

Такой подход обеспечивает плавное выполнение небольших задач, предоставляя пользователям беспрепятственный и приятный опыт просмотра.

Любая задача, выполнение которой занимает более 50 миллисекунд, считается "долгой задачей".

Значение эталона 50 мс заключается в его отношении к созданию кадров на устройствах для обеспечения визуально бесшовного опыта. Чтобы добиться плавного отображения с частотой 60 кадров в секунду (fps), устройства должны стремиться создавать новый кадр каждые 16 мс.

Эта быстрая генерация кадров гарантирует, что пользователи получат визуально захватывающее путешествие, когда они...

ReactjsProgrammingJavaScriptTechnology

Похожие материалы

Статья из архива сайта: перевод и редактура материала сообщества разработчиков. Версии библиотек и инструментов могли измениться, сверяйтесь с официальной документацией.