Почему chrome реагирует после получения сигнала kill-stop и как это предотвратить?

267
LyingOnTheSky

Я пытаюсь спасти батарею моего ноутбука, приостановив / остановив полностью хром, чтобы сделать что-то, при этом сворачивая его вручную, отправив ему сигнал kill-stop. Когда я сделал это, я нажал CTRL + T, чтобы проверить, может ли chrome создавать вкладку, когда она остановлена, chrome не реагировал на создание новой вкладки, но я заметил, что заголовок окна изменился с моего текущего имени вкладки на «Новая вкладка», то есть она все еще работает.

Линия я использую для отправки убить-стоп - сигнал является sudo kill -STOP $(pidof chrome).

Как я могу полностью остановить Chrome от использования процессорного времени в течение определенного периода времени и сохранения всей моей сессии в памяти (без необходимости выходить из нее и запускать ее снова)? И почему вышеописанный метод не работает полностью?

2
Вы уверены, что Chrome - это всего лишь один процесс? DaveP 6 лет назад 0
@DaveP `ipidof` возвращает все процессы, которые содержат (или точное совпадение?) Указанное имя. одно или многопроцессное приложение не является проблемой. LyingOnTheSky 6 лет назад 0

1 ответ на вопрос

2
Xen2050

Похоже, что pidofотсутствуют некоторые процессы, тестируя его с помощью Chromium на Debian, он возвращает 17 pid, а ps ax|grep [path]возвращает 18 pid.

Я бы использовал это вместо того, чтобы найти путь Chrome с

cpath=`which chrome`  pkill -f -STOP "$cpath" 

Используя преимущества pkill's -f:

-f, --full

Шаблон обычно сопоставляется только с именем процесса. Когда -f установлен, используется полная командная строка.

`which chrome` ничего не возвращает, вместо этого я использую` pkill ... chrome`. LyingOnTheSky 6 лет назад 0
`which` просто возвращает путь к команде, возможно, chrome не входит в ваш путь по умолчанию, но он также должен быть виден в выходных данных` ps ax` для подтверждения. Неиспользование пути просто позволяет избежать, к сожалению, схожих именованных команд, но, вероятно, прекрасно без него. Xen2050 6 лет назад 0