python 에서 Future 대상 을 이용 하여 다른 함수 예제 코드 를 되 돌려 줍 니 다.

머리말
본 고 는 주로 python 에서 Future 대상 으로 다른 함수 에 대한 내용 을 소개 하고 참고 학습 을 제공 합 니 다.다음은 더 이상 말 하지 않 겠 습 니 다.상세 한 소 개 를 해 보 겠 습 니 다.
Future 대상 도 협 정 처럼 결 과 를 설정 하면 즉시 다른 함 수 를 되 돌 릴 수 있 습 니 다.
예 는 다음 과 같다.

import asyncio 
import functools 
 
 
def callback(future, n): 
 print('{}: future done: {}'.format(n, future.result())) 
 
 
async def register_callbacks(all_done): 
 print('registering callbacks on future') 
 all_done.add_done_callback(functools.partial(callback, n=1)) 
 all_done.add_done_callback(functools.partial(callback, n=2)) 
 
 
async def main(all_done): 
 await register_callbacks(all_done) 
 print('setting result of future') 
 all_done.set_result('the result') 
 
 
event_loop = asyncio.get_event_loop() 
try: 
 all_done = asyncio.Future() 
 event_loop.run_until_complete(main(all_done)) 
finally: 
 event_loop.close() 
출력 결 과 는 다음 과 같 습 니 다.

registering callbacks on future
setting result of future
1: future done: the result
2: future done: the result
이 예 에서 먼저 함수add_done_callback()를 호출 하여 리 셋 함 수 를 등록 합 니 다.하나의 매개 변수 만 지원 하기 때문에functools.partial를 사용 하여 패키지 로 합 니 다.set_result()함수 가 호출 되면 즉시 리 셋 함수 가 실 행 됩 니 다.
총결산
이상 은 이 글 의 전체 내용 입 니 다.본 논문 의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 댓 글 을 남 겨 주 셔 서 저희 에 대한 지지 에 감 사 드 립 니 다.

좋은 웹페이지 즐겨찾기