GIL позволяет только одному потоку выполнять Python-байткод одновременно. Для CPU-bound задач многопоточность в Python бесполезна — потоки не параллельны, а чередуются. Для I/O-bound — работает: пока один поток ждёт ответа от сети, GIL отпущен, другой поток работает. GIL отпускается при: I/O операциях, вызовах C-расширений (numpy), sleep. Python 3.13 добавил экспериментальный free-threading (--disable-gil). Но пока стандарт — asyncio для I/O, multiprocessing для CPU.
Как GIL влияет на многопоточность?
Middle
346 просмотровAFK Offer AI
Что такое QuerySet в Django?