Встречается на собеседованиях • сегодня
Какой опыт работы с потоками
Да, есть. В Python для работы с потоками используется модуль threading. Потоки позволяют выполнять задачи параллельно, но из-за GIL (Global Interpreter Lock) они не подходят для CPU-bound задач. Лучше использовать их для I/O-bound задач, например, работы с сетью или файлами.
Пример:
python
import threading
import time
def task(name):
print(f"Task {name} started")
time.sleep(2)
print(f"Task {name} finished")
threads = []
for i in range(3):
t = threading.Thread(target=task, args=(i,))
threads.append(t)
t.start()
for t in threads:
t.join()
print("All tasks completed")Для более сложных сценариев можно использовать ThreadPoolExecutor из concurrent.futures:
python
from concurrent.futures import ThreadPoolExecutor
def square(x):
return x * x
with ThreadPoolExecutor(max_workers=3) as executor:
results = executor.map(square, [1, 2, 3])
print(list(results)) # [1, 4, 9]
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы