node.js Promise await 비동기에 처리 대해 주의
https://developers.google.com/web/fundamentals/primers/async-functions#careful_avoid_going_too_sequential 한국어
async function series() { await wait(500); await wait(500); return "done!"; }
이러면 1000ms
async function parallel() { const wait1 = wait(500); const wait2 = wait(500); await wait1; await wait2; return "done!"; }
이러면 500ms
두번째 코드는
wait1과 wait2가 (거의)동시에 실행되어서,
각각 500ms경과하며
후 await wait1, await wait2 코드는 그 wait1, wait2 가 끝나기를 기다리기 때문에
저 코드의 작업시간은 500ms 이다
(NODE.JS는 비동기 처리라서… 비동기 함수는 내부적으로 작업순서가 중요하지 않는 것 같다만, await는 비동기함수가 끝나는걸 기다리는거니까)