wldnswldnswl / IknowJS

You Don't Know JS 스터디
1 stars 1 forks source link

[쏙쏙] 16장. 타임라인 사이에 자원 공유하기 - 2 #196

Closed wldnswldnswl closed 6 months ago

wldnswldnswl commented 6 months ago

큐를 재사용할 수 있도록 만들기

워커 행동을 밖으로 빼기

작업이 끝났을때 실행하는 콜백 받기

작업이 끝났을때 콜백 실행하기

image

만든 큐 함수 정리

지금까지 만든 타임라인 분석하기

image

공유자원 장바구니, 큐, DOM을 차례로 살펴보자.

  1. 장바구니 -> 큐가 있어서 순서가 보장됨

    image
  2. DOM -> 큐가 있어서 순서가 보장됨

    • 큐를 사용해 DOM업데이트를 같은 타임라인에서 하도록 함.
    • 제품 추가 버튼을 누르는 순서대로 DOM 업데이트가 실행된다.

모든 타임라인의 서로 다른 단계에서 큐를 공유하고 있다!

image

가능한 타임라인을 그려보자..

image

큐를 건너뛰도록 만들기

-> 덮어쓸 항목을 큐에서 빼자

새로운 작업이 들어오면 건너띄는 dropping Queue

image

드로핑 큐에서는 아무리 빨리 항목을 추가해도 큐 항목이 한 개 이상 늘어나지 않는다. 사용자는 계속 기다릴 필요없이 서버에 응답을 최대 두 번만 기다린다.