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

Были ли ситуации, когда тебя не отпускали в отпуск

В Python, как и в других языках, есть механизмы управления потоком выполнения, которые могут "не отпускать" код в "отпуск" (т.е. приостанавливать выполнение). Например:

  1. Блокирующие вызовы - синхронные операции ввода-вывода:
python
import time
time.sleep(10)  # "Не отпускает" выполнение на 10 секунд
  1. Бесконечные циклы:
python
while True:
    pass  # Программа никогда не завершится
  1. Deadlock в многопоточном коде:
python
import threading

lock = threading.Lock()

def worker():
    lock.acquire()
    # Забыли release(), теперь другие потоки ждут вечно
    print("Работаем...")

t = threading.Thread(target=worker)
t.start()
t.join()  # Программа зависнет здесь

Для избежания таких ситуаций используйте:

  • Асинхронное программирование (asyncio)
  • Таймауты для блокирующих операций
  • Контекстные менеджеры для ресурсов
  • Правильное управление потоками/процессами
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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