EuroPython 2025

Choosing Between Free Threading and Async
2025-07-17 , North Hall

With the GIL gone, do we still need async in Python? Starting with Python 3.13, PEP 703 removes the GIL, enabling true free threading and parallelism across multiple CPU cores. In this talk, we’ll explore how this change affects the decision between using threading or async programming for individual developers. We’ll discuss the strengths and weaknesses of each approach and when to choose one over the other—whether you're handling CPU-bound tasks with threads or I/O-bound workloads with async. By the end of the session, you'll have a clear understanding of which model to use for your specific use case, empowering you to make more efficient decisions in your Python projects.


Expected audience expertise:

Intermediate

Samet has been chairing the Python Standards Group at Optiver since 2021, with the mission of standardizing Python codebases by making best practices known to everyone in the company. He advocates for clean, simple, and well-tested code.
He has earned his living using Python for more than 10 years and began participating in the open-source CPython project couple years ago. He occasionally submits new pull requests to open source and thoroughly enjoys the opportunity to give back to the Python community.