From 694746d9b0eeadf5f5b7d926f0f70930d955b302 Mon Sep 17 00:00:00 2001 From: Dongkyu Kim Date: Tue, 28 May 2024 01:39:04 +0900 Subject: [PATCH] =?UTF-8?q?Create=20=EA=B9=80=EB=8F=99=EA=B7=9C.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../\352\271\200\353\217\231\352\267\234.md" | 40 +++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 "\354\261\225\355\204\260_16/\352\271\200\353\217\231\352\267\234.md" diff --git "a/\354\261\225\355\204\260_16/\352\271\200\353\217\231\352\267\234.md" "b/\354\261\225\355\204\260_16/\352\271\200\353\217\231\352\267\234.md" new file mode 100644 index 0000000..bdf8d9e --- /dev/null +++ "b/\354\261\225\355\204\260_16/\352\271\200\353\217\231\352\267\234.md" @@ -0,0 +1,40 @@ +# 챕터 16: 타임라인 사이에 자원 공유하기 + +#스터디-쏙쏙들어오는함수형코딩 + +## 이번 장에서 살펴볼 내용 + +- 자원을 공유해서 생기는 버그를 찾는 방법을 배운다. +- 안전하게 자원을 공유할 수 있는 자원 공유 기본형을 만드는 방법을 이해한다. + +## DOM이 업데이트되는 순서를 보장해야 합니다 + +큐를 이용하면 공유 자원을 안전하게 공유 할 수 있다. 들어온 순서대로 나오는 데이터 구조이기 때문에 사용자 클릭을 큐에 넣으면 순서대로 꺼낼 수 있다. + +``` +실제로 큐를 이용해서 이벤트를 제어하신 경험들이 있으신가요? +``` + +## 자바스크립트에서 큐를 만들기 + +큐는 자료 구조이지만, 타임라인 조율에 사용한다면 동시성 기본형이라고 부른다. 동시성 기본형은 자원을 안전하게 공유할 수 있는 재사용 가능한 코드를 말한다. + +## 지금까지 만든 타임라인 분석하기 + +모든 실행 가능한 순서를 확인해 본다면 + +### 동시에 실행: 불가능 + +자바스크립트 스레드 모델에서 동시에 실행하는 것은 불가능 합니다. 이 순서는 생각하지 않아도 되지만 다른 스레드 모델에서는 가능할 수 있기 때문에 고려해야합니다. + +### 왼쪽 먼저 실행: 기대한 순서 + +클릭한 순서대로 실행되는 원하는 순서 + +### 오른쪽 먼저 실행: 불가능 + +클릭한 순서대로 실행되기 때문에 이 동작은 실행되지 않는다. + +## 큐를 건너뛰도록 만들기 + +AJAX 요청에 의해 최종결과 업데이트가 될 때 까지 몇 초가 걸릴 수 있다. 새로운 작업이 들어오면 건너뛸 수 있는 드로핑 큐를 만들어 사용한다.