2015-08-20 5 views

ответ

0

time.sleep() фактически приостанавливает выполнение кода и не разрешает запуск другого кода. Gevent - это цикл событий, что означает, что он позволяет другим «потокам» (зеленым) запускаться при блокировке.

По существу gevent имеет список задач, которые он выполняет. Это позволяет одновременно запускать только одну задачу. Если вы скажете time.sleep (1), эта задача все еще работает, но ничего не делает. Если вы скажете gevent.sleep (1), он приостанавливает текущую задачу и разрешает выполнение других задач.

gevent.Timeout() фактически запускает вторую задачу для контроля количества времени. Поскольку time.sleep() никогда не дает, эта вторая задача никогда не получит шанс выбросить ошибку.

 Смежные вопросы

  • Нет связанных вопросов^_^