반응형
1. 이책이 커버하는 것.
- async await 구문과 코루틴
- task로 코루틴을 동시적으로 run하게 하는법
- task취소하기
- 이벤트 루프를 커스텀하게 만들기
- 코루틴 실행 타임 재기
- 코루틴돌때 문제 관찰하기
2. 요약
- async로 코루틴을 만들수 있음.
- 코루틴은 블로킹이 있을때 멈출 수 있음.
- 이는 다른 코루틴이 돌아가게함.
- 코루틴이 멈춘 시점에서의 오퍼레이션이 끝나면 우리의 코루틴은 깨어나고 다시 시작한다.
- await로 코루틴을 불러서 run하게 하고, return을 하기를 기다린다.
- await와 함께하는 coroutine은 멈춘다.
- 첫번째 코루틴이 결과를 기다릴대까지 다른 코루틴이 run한다.
- asyncio.run()으로 싱글 코루틴을 실행할 수 있다.
- main entry point가 될 수 있음.
- task로 길게 걸리는 작업들을 동시적으로 수행할 수 있음.
- task는 코루틴을 감싸서 이벤트루프에서 돌아가게 함.
- task를 만들면, 이벤트루프에서 스케쥴됨.
- task를 취소하고, task에 타임아웃하는법. --> 점유하는것을 방지할수 있다.
3. 목차
- 코루틴소개
- async로 코루틴 만들기
- await키워드로 실행 멈추기
- sleep으로 길게 실행되는 코루틴
- task로 동시적으로 running하기.
- task만들기 기본
- 여러개 태스크들 running하기.
- 태스크취소하고, 타임아웃 세팅하기
- 태스크들, 코루틴들, futures, awaitables
- future, tasks, coroutines 의 관계
- 데코레이터로 코루틴 실행 시간 재기
- 코루틴과 태스크의 잠재적 위험
- cpu bound
- 블로킹 api
- 이벤트 루프 다루기
- 디버그 모드
반응형