이번 글은 파이썬의 비동기 처리에 관한글입니다. 파이썬의 비동기처리는 제네레이터 기반 코루틴과 네이티브 코루틴이있고 파이썬 버전마다 비동기가 계속 발전되어 바뀌는 부분이 많은데 이 글에선 3.9+ 이상 버전 기준으로 설명 드리겠습니다. GIL 파이썬의 비동기에 대해 알아보기 전에 GIL에 대해 먼저 알고있으셔야 합니다. GIL이란 파이썬이 한번에 하나의 스레드만(프로세스 아님) 실행 시킬수 있도록하는 키의 개념입니다. 위 사진에서 보이듯이 쓰레드1에서 쓰레드2로 넘어 갈때 쓰레드1이 GIL을 풀어주고 쓰레드2가 GIL 키를 acquire해가는 모습이죠. 이 때문에 파이썬은 멀티 스레드를 사용시 오히려 성능이 안나온다(thread context switching 비용때문에)고 하는 것이죠. 참고로 멀티 스..