Back to questions
СБЕР
Junior — Middle
81
Объясните основные принципы работы с несколькими потоками в Python и их преимуществах.
Companies where asked
Answer from AI
sobes.tech AI
В Python многопоточность реализуется с помощью модуля threading. Основная идея — запускать несколько потоков, которые могут выполняться параллельно, что полезно для задач ввода-вывода (например, сетевые запросы, чтение файлов). Однако из-за GIL (Global Interpreter Lock) потоки не могут одновременно выполнять байт-код Python, поэтому многопоточность не ускорит CPU-интенсивные задачи.
Преимущества:
- Улучшение отзывчивости приложений (например, GUI или серверов)
- Параллельное выполнение операций ввода-вывода
Пример создания и запуска потока:
import threading
def worker():
print("Поток начал работу")
thread = threading.Thread(target=worker)
thread.start()
thread.join() # Ждем завершения потока
Для CPU-интенсивных задач лучше использовать multiprocessing или асинхронное программирование.