Python ponuja tri modele sočasnosti, izbira pa je odvisna predvsem od tega, ali je vaše delo I/O-vezano ali CPU-vezano — odločitev je v veliki meri oblikovana s strani GIL-a (ki preprečuje, da bi niti izvajale Python kod vzporedno).
Trije modeli
threading → multiple threads, ONE process. GIL-limited for CPU.
multiprocessing → multiple PROCESSES, each its own interpreter/GIL → true parallelism.
asyncio → single thread, cooperative coroutines yielding at await points.
