Можно ли заморозить / приостановить длинную задачу обработки (например, 3-дневное вычислительное задание python.exe myscript.py) с Windows 7?

Или, вообще, можно ли приостановить любой процесс Windows?


(Конечно, в случае с Python я мог бы использовать модуль atexit , сохранить состояние при выходе, затем завершить процесс и возобновить его позже, но здесь это будет неуместно - я ищу более "общее" решение)

Случаи применения:

  1. вы запускаете длинную задачу обработки, используя 25%, 50% или 100% процессорного времени, но затем вы хотите нормально использовать компьютер в течение нескольких часов.

  2. Вы работаете от батареи ноутбука несколько часов и хотите использовать компьютер нормально, но без слишком быстрой зарядки батареи из-за нагрузки на процессор: заморозьте ее!

Примечание. Снижение приоритета процесса в Task Manager не решит проблему: если остальная часть компьютера не используется, процесс, требующий значительных вычислительных ресурсов, все равно будет загружен на 25, 50 или 100%, а значит, 2. не решен

3 ответа3

1

В Resource Monitor (PERFMON.EXE /res или « Пуск»> «Все программы»> «Стандартные»> «Системные инструменты»> «Resource Monitor») можно щелкнуть правой кнопкой мыши любой процесс и «приостановить» его (а затем «Возобновить»). Вы можете легко идентифицировать свой процесс по использованию процессора. perfmon.exe

Будет предупреждение о том, что это может привести к сбою системы, но вы можете игнорировать его для несистемных процессов (но, очевидно, не приостанавливайте необходимые системные процессы!)

Resource Monitor является частью стандартной Windows (не нужно ничего скачивать или устанавливать); это работает под Windows 7 и Windows 10 наверняка; Я думаю, что большинство других версий тоже, но я не могу проверить это.

0

В дополнение к ответу @ Aganju, вот как запустить его с помощью CTRL+ALT+SHIFT ESCAPE с помощью AutoHotkey:

!^+Escape::
Run perfmon.exe /res
return

(аналогично CTRL+SHIFT ESCAPE, который является обычным диспетчером задач)

0

Я нашел еще более простое решение:

Если процесс python.exe запускается в окне Windows cmd.exe и печатает некоторый текст каждые несколько секунд (ведение журнала), то вы можете просто щелкнуть в любом месте этого окна и перетащить мышь, это сделает выбор видимым.
Когда выбор сделан, процесс приостанавливается (вы можете проверить это в диспетчере задач: процесс упадет до 0% CPU). Чтобы возобновить, просто нажмите Enter !

Очень простой способ приостановить процесс Python :)

PS: чтобы разрешить такой выбор в cmd.exe , вам нужно выполнить ALT SPACE , Свойства , Включить быстрое редактирование.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .