Вопрос

Когда мой скрипт отключается на 50 секунд, моя IDE блокируется, что очень раздражает.Я не могу переключать вкладки, просматривать свой исходный код, вводить код и т.д.Это происходит в pylde и pyscripter, я не пробовал другие IDE.Что я могу сделать, чтобы исправить это?я на самом деле делаю

for i in range(0, timeInSeconds): time.sleep(1) 

надеясь, что IDE будет обновляться один раз в секунду, но это выглядит не так.Что я могу сделать, чтобы исправить это?

Это было полезно?

Решение

Я предполагаю, что вы запускаете свой код из IDE?

Вероятно, ваша IDE блокируется во время выполнения вашего кода.Поищите какую-нибудь настройку, которая могла бы контролировать это поведение, в противном случае, я думаю, вашим единственным выбором было бы сменить IDE.(Или запустите свой код из-за пределов IDE)

Другие советы

Можете ли вы настроить запуск вашего скрипта извне?Я не знаю о конкретных IDE, но я бы попытался создать другой процесс для отлаженного скрипта и не запускать их в IDE.Если это не помогает, то это проблема IDE.

Проблема в том, что ваша IDE не python.Я не так часто использую sleep, я только что попробовал его на Эрик ИДЕ и вы можете использование ваша IDE, пока ваш код запущен и находится в спящем режиме.Если вы не можете настроить свою IDE на это, а вам это нужно, подумайте о смене IDE или о запуске вашего кода с консоли.

Лично я считаю, что вам никогда не следует выполнять код в том же цикле, что и ваша IDE.Поскольку большинство IDE запускают основной цикл GUI, блокировка этого приведет к полному зависанию пользовательского интерфейса.Это просто напрашивается на неприятности, и я бы удалил отчеты об ошибках в обеих этих IDE.

Я подозреваю, что проблема в том, что IDE находится в цикле, ожидая завершения скрипта.

Само по себе это не является проблемой при условии, что любые пользовательские сообщения все еще обрабатываются, пока IDE находится в этом цикле.

Но что, как я подозреваю, в данном случае идет не так, так это то, что IDE просто запускает цикл без обработки и сообщений, и, следовательно, пользовательский интерфейс, похоже, заблокирован.

IDE необходимо было бы изменить, чтобы либо обрабатывать сообщения GUI во время цикла, либо, в качестве альтернативы, ей необходимо создать поток для запуска скрипта.Затем поток будет выполняться в фоновом режиме, а графический интерфейс останется отзывчивым.

Например , в Zeus для Windows IDE использует подход фонового потока, и у нее нет этой проблемы.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top