React 내부 동작원리를 알아보자(6) - Hook의 끝, Scheduler의 시작 전의 사전 지식

방구석 코딩쟁이·2024년 1월 25일
0

이 시리즈는 "가장 쉬운 웹개발 with Boaz" 님의 [React 까보기 시리즈] 를 기반으로 만들어졌습니다.

지금까지는 hook을 통해 컴포넌트의 상태를 업데이트하는 내용을 알아봤습니다.
업데이트를 반영할 WORK를 scheduler에게 전달하고 scheduler는 스케줄링된 Task를 적절한 시기에 실행합니다.

구체적으로 이야기해보자면, 훅 구현체를 찾아가는 과정을 진행했었고, 훅은 어떻게 생성이 되는지(마운트 되는지), 훅은 어떻게 상태를 변경(업데이트)하고, 컴포넌트를 리렌더링하는지를 배울 수 있었습니다.

reconciler, scheduler의 역할

reconciler가 비동기 호출이 필요한 WORK의 실행 제어권을 scheduler에 위임합니다.

  • VDOM 재조정 작업 전에 설정해야 하는 부분을 처리

scheduler는 브라우저의 상태와 다양한 조건을 확인하여 적절한 시기를 판단하고 WORK를 실행합니다.

  • 스케줄링된 Task에 우선순위 반영과 실행하기 적절한 때를 판단하고, 작업의 실행과 중단을 담당합니다.
  • 브라우저의 상태와 다양한 조건들을 고려하기 위해 host config 모듈이 존재합니다
    • host config 모듈: 호스트 환경에 의존적인 API를 사용하는 모듈 (비동기 API, performance, isInputPending 등)
profile
풀스택으로 나아가기

0개의 댓글