В React конкурентный рендеринг позволяет разделить быстрые и медленные части приложения, что позволяет рендерить медленные компоненты в фоновом режиме, не блокируя быстрые компоненты, таким образом каждый компонент может реагировать на взаимодействия пользователя в своем собственном темпе.
Чтобы использовать конкурентный рендеринг, необходимо использовать API, такие как переходы -
useTransition или startTransition, а также отложенные значения - useDeferredValue. Эти API помогают пометить обновления стейта с низким приоритетом. Обновления стейта, которые объявляются вне функциональностей конкурентного рендеринга, помечаются как обновления с высоким приоритетом.Энрике Юджи подробно изучил API конкурентного рендеринга и описал экстремальные случаи использования. Например, важно понимать, что React рендерит в однопоточной среде. Если он начал рендерить компонент, то он будет рендерить его до конца без прерываний. Только по окончании рендеринга компонента React проверит, есть ли какая-либо задача с высоким приоритетом в пуле задач. В результате, следует избегать задач, которые интенсивно используют процессор и выполняются в рамках одного компонента, а не распределены по нескольким компонентам.
https://blog.codeminer42.com/everything-you-need-to-know-about-concurrent-react-with-a-little-bit-of-suspense/
✍️ @React_lib
