핵심 요약
티몬이 자바스크립트의 긴 실행으로 인해 발생하는 페이지 무응답 문제를 해결하기 위해 setTimeout를 활용한 비동기 처리 방식을 도입했습니다.
구현 방법
- 실행을 작은 단위로 분할하고 setTimeout으로 다음 처리 분기로 넘어가 브라우저의 이벤트 루프를 차단하지 않도록 구성
- 긴 작업과 UI 업데이트를 교대하여 사용성 저하를 최소화하고 응답 시간을 균형 있게 관리
- 에러 처리와 상태 표시를 통해 사용자 피드백을 유지하고 중단 가능 포인트를 제공
주요 결과
- UI 응답성 개선 및 페이지 상호작용 지연 최소화
- 긴 작업 도중에도 화면 렌더링이 지속되도록 제어 흐름 유지
