얼음꽃의 일지

[JS] await 과 promise 본문

잡다한 지식

[JS] await 과 promise

얼음꽃 2024. 7. 26. 14:48
728x90

현재까지 await 과 promise를 둘 다 사용해봤을때,

다양한걸 사용할때는 속도 측면으로 promise 가 더 빠르다고 느꼈습니다.

 

여러개의 create/update/delete같은 작업을 진행할때, 각각의 진행값이 이루어져야하는

필수 순서가 있다면 await을 쓰는게 맞지만, 순서없이 값을 변경하는 이유라면 promise가 최적의 속도를 냅니다.

 

promise 안에서는 여러개의 작업이 동시에 진행되지만, 먼저 빨리 끝나는대로 정리가 되기에 순서랑 상관없게 됩니다.

 

const task1 = new Promise((resolve, reject) => {
  setTimeout(() => {
    console.log("Task 1 completed");
    resolve("Task 1 result");
  }, 3000);
});

const task2 = new Promise((resolve, reject) => {
  setTimeout(() => {
    console.log("Task 2 completed");
    resolve("Task 2 result");
  }, 1000);
});

const task3 = new Promise((resolve, reject) => {
  setTimeout(() => {
    console.log("Task 3 completed");
    resolve("Task 3 result");
  }, 2000);
});

Promise.all([task1, task2, task3]).then((results) => {
  console.log("All tasks completed");
  console.log(results);
});

 

다음 코드를 실행하게되면 작성은 1,2,3이지만 순서는 그게 아닐 수 있기 때문에, 그런 부분을 참고해서 값 변경 시 

await과 promise를 적절하게 병행해서 쓰면 최적의 효과를 보지 않을까 합니다.

728x90

'잡다한 지식' 카테고리의 다른 글

[SQL] WITH 쿼리  (0) 2024.09.09
[AWS] Redis 와 DynamoDB 비교 (순수 의견)  (0) 2024.08.06
[JS] for와 관련된 문법  (0) 2024.07.08
[Node] Dynamo DB 사용법  (0) 2024.06.20
[AWS] Dynamo DB 생성 방법 및 설정  (0) 2024.06.20