Python 2.7은 지원이 종료되었으며 2026년 1월 31일에 지원 중단됩니다. 지원 중단 후에는 조직에서 이전에 조직 정책을 사용하여 레거시 런타임의 배포를 다시 사용 설정한 경우에도 Python 2.7 애플리케이션을 배포할 수 없습니다. 기존 Python 2.7 애플리케이션은 지원 중단 날짜 이후에도 계속 실행되고 트래픽을 수신합니다. 지원되는 최신 Python 버전으로 마이그레이션하는 것이 좋습니다.
Future는 비동기 작업의 결과를 나타냅니다.
생성되었을 때는 결과 데이터가 없을 것입니다.
작업이 끝나면 Future가 결과를 얻습니다.
애플리케이션은 Future 객체의 get_result() 메서드를 호출할 수 있습니다. 결과가 도착하면 메서드가 이를 반환하고 그렇지 않으면 결과가 도착할 때까지 기다린 후 반환합니다.
참고: RPC와 Future 간에는 1:1 매핑이 없습니다. 단일 RPC 결과에 여러 Future가 묶여있을 수 있습니다.
인스턴스 메서드
check_success()
작업이 성공했는지 확인합니다. 필요한 경우 대기합니다.
문제가 있으면 예외를 발생시킵니다. 문제가 없으면 None을 반환합니다.
done()
결과(또는 예외)가 도착하면 True를 반환하고 그렇지 않으면 False를 반환합니다. 이 함수는 대기하지 않습니다.
get_exception()
필요한 경우 대기합니다. 그런 다음 예외를 반환합니다(또는 예외가 없으면 None 반환). 예외를 발생시키는 것이 아니라 반환합니다.
get_result()
필요한 경우 대기합니다. 그런 다음 결과를 반환하거나 예외를 발생시킵니다.
get_traceback()
필요한 경우 대기합니다. 그런 다음 예외의 역추적 객체를 반환합니다(또는 역추적 객체가 없으면 None 반환).
Python의
traceback 모듈에는 역추적 객체를 출력 및 사용하는 함수가 있습니다.
wait()
결과 또는 예외가 도착할 때까지 대기합니다.
항상 None을 반환합니다.
클래스 메서드
wait_all(futures)
전달된 반복 가능 항목의 모든 Futures가 완료될 때까지 대기합니다.
인수
futures
Future 객체의 반복 가능 항목
None 반환
wait_any(futures)
Futures의 반복 가능 항목 중 적어도 하나가 완료될 때까지 대기합니다.
인수
futures
Future 객체의 반복 가능 항목
완료된 Future 한 개를 반환합니다.
futures 반복 가능 항목이 비어 있으면 None을 반환합니다.