비동기 이터러블 생산
스트림, 페이지네이션, 메시지 큐가 `AsyncIterable<T>` 계약으로 다음 값을 비동기적으로 넘깁니다.
AsyncIterable<T>
연속 비동기 값을 동기 루프처럼 읽더라도 생산자 종료, 중단, 오류 전파는 명시적으로 점검해야 합니다.
스트림, 페이지네이션, 메시지 큐가 `AsyncIterable<T>` 계약으로 다음 값을 비동기적으로 넘깁니다.
AsyncIterable<T>
`for await`은 다음 값이 준비될 때까지 기다리며 처리 순서를 단순하게 만듭니다.
사용자 취소, timeout, break 조건을 정해 무한 대기와 불필요한 처리를 막습니다.
finally나 return 처리로 열린 연결과 파일 핸들을 닫는 경로를 보장합니다.