Встречается на собеседованиях • сегодня
Можно ли выполнять 2 потока параллельно в Python
В Python из-за Global Interpreter Lock (GIL) настоящая параллельность потоков невозможна для CPU-задач. Однако для I/O-bound операций потоки могут работать эффективно, так как GIL освобождается во время ожидания ввода-вывода.
Для CPU-bound задач лучше использовать модуль multiprocessing, который создает отдельные процессы с собственным GIL.
Пример с потоками:
python
import threading
import time
def task(name):
print(f"Поток {name} начал работу")
time.sleep(2)
print(f"Поток {name} завершил работу")
t1 = threading.Thread(target=task, args=("A",))
t2 = threading.Thread(target=task, args=("B",))
t1.start()
t2.start()
t1.join()
t2.join()Хотя потоки запускаются параллельно, GIL переключается между ними, что создает иллюзию параллельности. Для настоящей параллельности CPU-задач используйте multiprocessing.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы