Quick Answer
Coroutines are async functions (async def) that can pause at await points without blocking. Unlike threads, coroutines cooperatively yield control. They're more memory efficient (no thread stack) and easier to reason about (explicit yield points). Useful for: concurrent API calls, database queries, file I/O where waiting is the bottleneck. Use asyncio.gather() to run multiple coroutines concurrently.
Answer
Coroutines can pause and resume execution. Ideal for high-latency operations without blocking the thread. Used in scalable servers and data pipelines.
S
SugharaIQ Editorial Team
Verified Answer
This answer has been peer-reviewed by industry experts holding senior engineering roles to ensure technical accuracy and relevance for modern interview standards.