
asyncio의 event loop는 비동기 작업을 관리하고, task를 실행하는 주된 루틴입니다. event loop는 task를 실행하고, 완료되면 결과를 반환하는 역할을 합니다.
asyncio.gather() 함수는 여러 task를 동시에 실행하고, 결과를 반환하는 함수입니다. 이 함수를 사용하여 task를 실행하면, event loop가 여러 task를 동시에 실행할 수 있기 때문에 비동기 작업을 더 효율적으로 관리할 수 있습니다.
asyncio.create_task() 함수는 task를 생성하는 함수입니다. 이 함수를 사용하여 task를 생성하면, event loop가 task를 실행할 수 있습니다.
asyncio.run() 함수는 event loop를 실행하는 함수입니다. 이 함수를 사용하여 event loop를 실행하면, task를 실행할 수 있습니다. asyncio.run() 함수를 사용하여 event loop를 실행해야 하는 이유는, event loop가 task를 실행하기 때문입니다.
예를 들어, 다음과 같이 asyncio.gather() 함수를 사용하여 task를 실행할 수 있습니다.
#hostingforum.kr
python
import asyncio
async def task1():
await asyncio.sleep(1)
print("Task 1 완료")
async def task2():
await asyncio.sleep(2)
print("Task 2 완료")
async def main():
await asyncio.gather(task1(), task2())
asyncio.run(main())
이 예제에서, asyncio.gather() 함수를 사용하여 task1()과 task2()를 동시에 실행합니다. asyncio.run() 함수를 사용하여 event loop를 실행하면, task1()과 task2()가 동시에 실행됩니다.
2025-07-27 19:50