본문 바로가기
Q&A2026년 4월 16일1분 읽기

Python asyncio.gather에서 일부 Task만 취소하고 나머지는 계속 실행하고 싶어요

데이터사이언스현
조회 246댓글 3

여러 외부 API를 병렬로 호출하는데, 일부는 느려서 타임아웃을 주고 다른 것들은 끝까지 기다리고 싶습니다.

results = await asyncio.gather(
    fetch_fast_api(),
    fetch_slow_api(),
    fetch_medium_api(),
)

한 호출이 예외 던지면 gather 전체가 같이 죽는 것 같은데, return_exceptions=True만 켜면 되는 건지, 아니면 asyncio.wait_for를 각각 걸어야 하는 건지 애매합니다. Python 3.11입니다.

댓글 0

아직 댓글이 없습니다.
Ctrl+Enter로 등록