Skip to main content
Back to course
Log in
Get started
Someone wanted to learn this too, so Grasp built them a personal learning path.
Create your own
Asyncio and async iterators
ยท
Module 2
Introduction to Asynchronous Programming
1
Concurrency vs. Parallelism: A Real-World Analogy
Differentiate between concurrency and parallelism, providing a real-world analogy for each.
Differentiate between concurrency and parallelism, providing a real-world analogy for each.
2
I/O-Bound vs. CPU-Bound: When to Use Asyncio
Categorize computational tasks as I/O-bound or CPU-bound and identify which type is suitable for `asyncio`.
Categorize computational tasks as I/O-bound or CPU-bound and identify which type is suitable for `asyncio`.
3
Understanding `async def` and Coroutines
Define a coroutine using `async def` and explain its role as a cooperative unit of work.
Define a coroutine using `async def` and explain its role as a cooperative unit of work.
4
Understanding `await` and Asynchronous Control Flow
Explain the function of the `await` keyword in pausing a coroutine and yielding control to the event loop.
Explain the function of the `await` keyword in pausing a coroutine and yielding control to the event loop.
5
Understanding the `asyncio` Event Loop
Describe the role of the `asyncio` event loop in orchestrating coroutine execution.
Describe the role of the `asyncio` event loop in orchestrating coroutine execution.
6
Running Asyncio Programs with `asyncio.run()`
Use `asyncio.run()` to execute a top-level coroutine and serve as the program's entry point.
Use `asyncio.run()` to execute a top-level coroutine and serve as the program's entry point.
Previous module
Foundations of Iteration in Python
Next module
Managing Concurrent Operations