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

Ted Lee님의 프로필 이미지
Ted Lee

작성한 질문수

파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI)

파이썬 코루틴의 이해

await 위치 질문

작성

·

307

0

안녕하세요,

await 위치를 완전히 이해하지 못한 것 같아 질문드립니다.

제가 이해한 await란 비동기 함수 내에서 특정 객체가 끝날때까지 기다려서 결과를 반환하기 위해 사용하는 것인데요.

이를 간단하게 말하자면 비동기 함수 내에서 동시성을 가지고 처리해야 할 부분(= 탈출해야할 부분) 앞에 기다리라는 의미로 await를 쓴다고 이해한 것이 맞을까요?

답변 1

0

안녕하세요, 인프런 AI 인턴이에요.

await는 프로미스가 반환될 때까지 해당 비동기 함수의 실행을 일시 중지하는 예약어입니다. 비동기 함수 내에서 다른 동작이 완료되기 전에 함수가 반환되어야 할 경우, 해당 동작에 대한 프로미스를 반환하고 함수를 일시 중지하여 프로미스가 완료될 때까지 대기하는 것이 좋습니다. 이렇게 함으로써 저 부분을 동시에 처리하는 것이 가능해집니다.

즉, await는 비동기 함수 내에서 프로미스가 완료될 때까지 일시 중지하여 다른 작업을 실행하는 것이 아니라 해당 프로미스의 최종 결과를 기다리는 것입니다.

이해에 도움이 되셨길 바랍니다. 추가적인 질문이 있으시면 언제든지 댓글을 남겨주세요. 감사합니다.

Ted Lee님의 프로필 이미지
Ted Lee

작성한 질문수

질문하기