tl;dr Java has virtual threads. Virtual threads are a better way of doing concurrency than Python’s async and await. We should add virtual threads to Python. Virtual Threads Virtual threads were added to Java a few years ago. Virtual Threads combine the best of async Tasks and normal threads. Like normal threads, virtual threads: require no new syntax provide a more intuitive mode of execution than async/await. Like tasks, virtual threads: only switch execution at well defined points in ...| Discussions on Python.org
TLDR: I think that the primary benefit of async/await is that it lets us concisely express complex concurrency; any (potential) performance improvements are just a second-order effect. We should thus judge async primarily based on how it simplifies our code, not how (or if) it makes the code faster.| Kobzol’s blog