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

Отпускает ли GIL функция time.sleep

Да, time.sleep() отпускает GIL (Global Interpreter Lock) во время ожидания. Это позволяет другим потокам выполняться, пока текущий поток "спит".

Пример:

python
import time
import threading

def worker():
print("Worker started")
time.sleep(2) # GIL отпускается здесь
print("Worker finished")

t = threading.Thread(target=worker)
t.start()
print("Main thread continues")

text

Вывод:  

Worker started
Main thread continues
Worker finished

text

Это подтверждает, что основной поток продолжил работу, пока `worker` спал.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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