Встречается на собеседованиях • сегодня

Какими модулями реализована многопоточность в Python

В Python многопоточность реализована через модуль threading, который предоставляет высокоуровневый интерфейс для работы с потоками. Однако из-за GIL (Global Interpreter Lock) потоки выполняются не параллельно, а конкурентно, что делает их полезными в основном для I/O-bound задач.

Для CPU-bound задач лучше использовать модуль multiprocessing, который создает отдельные процессы, обходя ограничения GIL.

Пример с threading:

python
import threading

def worker():
    print("Thread working")

threads = []
for _ in range(5):
    t = threading.Thread(target=worker)
    threads.append(t)
    t.start()

for t in threads:
    t.join()

Для асинхронного подхода есть модуль asyncio, который использует корутины и event loop.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы