인프런 커뮤니티 질문&답변

egpark님의 프로필 이미지

작성한 질문수

[코드팩토리] [입문] 9시간만에 끝내는 코드팩토리의 Javascript 무료 풀코스

Async & Await

n개의 await를 사용하면, 이들은 promise chaining 처럼 동작하나요?

24.08.15 14:28 작성

·

23

0

코드팩토리 디스코드에 질문하면 더욱 빠르게 질문을 받아 볼 수 있습니다!

[코드팩토리 디스코드]
https://bit.ly/3HzRzUM

 

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
- 먼저 유사한 질문이 있었는지 검색해보세요.
- 서로 예의를 지키며 존중하는 문화를 만들어가요.
- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.

 

안녕하세요, 알찬 강의와 친절한 답변 덕분에 열심히 학습하고 있습니다. 감사합니다!

 

이번 수업에서 사용하셨던 예제입니다.

async function runner() {

const result1 = await getPromise(1); // 1초 소요

const result2 = await getPromise(5); // 5초 소요

const result3 = await getPromise(8); // 8초 소요

}

runner();

console.log('실행 끝')

 

질문입니다.

위의 코드에서, runner()를 실행했을 때 총 소요시간은 14초가 걸린다고 수업에서 말씀하셨습니다.
async, await 키워드를 사용하면 promise chaining 처럼 동작하는 건가요?
Promise.all() 처럼 동작해야 비동기의 효율성을 극대화할 수 있다고 생각했는데 의외여서요!
promise chaining으로 동작하는 것은 마치 동기 함수들을 연속적으로 실행하는 것과 다를 바가 없어보입니다..
어떤 부분을 제가 잘못 이해하고 있는걸까요?

답변 1

0

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

2024. 08. 16. 10:23

안녕하세요!

정확히 Promise Chaining 처럼 작동합니다.

Promise.all 처럼 parallel 프로세싱을 하고싶다면 Promise.all을 사용하는 방법밖에 없습니다.

감사합니다!

egpark님의 프로필 이미지

작성한 질문수

질문하기