InterviewHubPRO
Section Overview
Q26

Question 26 of 65

Part 3: Asynchronous Programming & Concurrency (26 - 40)

40%
Python & FastAPI•Part 3: Asynchronous Programming & Concurrency (26 - 40)

Threading vs Multiprocessing vs AsyncIO:

In Simple Words:

  • AsyncIO: Single-thread cooperative multitasking via an event loop. Best for high-concurrency I/O-bound web sockets and network APIs.
  • Threading: Multiple OS threads sharing same memory, bounded by the GIL. Best for I/O operations (file reading, external calls).
  • Multiprocessing: Multiple independent OS processes, each with its own Python interpreter and memory. Bypasses the GIL for CPU-bound computations.
python
# AsyncIO high-concurrency I/O:
import asyncio

async def fetch_item(item_id):
    await asyncio.sleep(0.01) # Non-blocking I/O simulation
    return item_id

async def main():
    results = await asyncio.gather(*(fetch_item(i) for i in range(1000)))
asyncio.run(main())