Как убить неотвечающую задачу GUI под Unity?

29

Я ищу удобный для пользователя способ уничтожения неотвечающих приложений с графическим интерфейсом в Unity.

Я посмотрел через плечо на нового пользователя Unity, который пытался использовать gscan2pdf - и gscan2pdf, кажется, действительно сломан - после небольшого перебора он потреблял много ресурсов процессора и памяти, компьютер начал загружаться, и пользователю нужно было немедленно убить графический интерфейс gscan2pdf, который был полноэкранным, не реагировал и имел фокус.

Хорошо, я знаю несколько способов, как это сделать:

  • Нажмите Alt+F2и введите xkill-> выберите окно
  • Хит Alt+F2начать xterm, использовать topили, pgrepа затем kill PIDили непосредственно использоватьpkill

Оба способа не очень интуитивны для пользователей, ориентированных на GUI.

Есть какой-нибудь ярлык Unity, чтобы получить что-то вроде xkill?

Или это лучший GUI-способ добавить топовый GUI в Unity-startter? А какой?

maxschlepzig
источник
3
Вы можете определить комбинацию клавиш для быстрого доступа xkill..
Нитин Венкатеш,
@nitstorm, хорошо, опубликуйте, как сделать это как ответ, и я проголосую за это.
maxschlepzig
Размещено со скриншотами.
Нитин Венкатеш
Я даже не знал о вещи xkill ...
AJMansfield

Ответы:

29

Вы можете создать сочетание клавиш для xkill.

  1. Введите клавиатуру в Unity Dash и щелкните значок. Выберите вкладку ярлыков.

  2. Там прокрутите вниз до раздела пользовательских ярлыков и нажмите на +кнопку

  3. Теперь назовите что-нибудь для своего ярлыка и позвольте команде быть, xkillа затем нажмите ОК

  4. Наконец, нажмите на xkillярлык и нажмите нужную комбинацию клавиш, чтобы назначить ярлык для него и все :)
  5. Нажатие сочетания клавиш активирует xkillвсякий раз, когда вам это нужно.

горячие клавиши

keyboard_shortcuts2

Нитин Венкатеш
источник
1
Дополнение: чтобы отменить xkill, просто щелкните правой кнопкой мыши в любом месте, и курсор изменится с креста на стрелку по умолчанию.
Парто
5

Лучший способ, который я найду, это использовать окно терминала:

перейти к терминалу:

sudo ps -aux | grep "name of application"

запишите идентификатор процесса

sudo kill -9 "processID"

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

Раджеш Пантула
источник
1
ОП не хочет killкоманду, он специально заявил об этом во втором маркированном пункте.
Нитин Венкатеш
Ничего себе, это плохой совет на нескольких разных уровнях - 1. Я попросил GUI-или GUI-relatic решение для убийства задачи 2. ps ... | grep- есть команда pgrep, которая также упоминается в вопросе 3. kill -9отправляет, SIGKILLпод которой программа имеет нет шансов завершить милостивым способом - обычно всегда нужно kill PIDсначала попробовать - это отправляет SIGTERM- только если процесс не завершается SIGTERM, нужно выпуститьkill -9 PID
maxschlepzig
Кроме того, я возвращаю слишком много цифр. Я не думаю, что новички легко найдут PID без посторонней помощи.
Ги Имамура
3

Еще вы можете запустить System Monitor. Вы можете выбрать процесс с помощью мыши и нажать кнопку «Завершить процесс», чтобы убить его. Это должно работать даже с не отвечающими процессами, но я не думаю, что оно так сильно, как kill -9. У него есть преимущество в том, что оно представляет собой полностью графическое решение и очень похоже на аналогичный Activity Monitor в Mac OS X. Это полезно для тех из нас, кто переходит от Mac к Linux.

shadowITninja
источник
1

Сам не пробовал, но этот маленький скрипт выглядит полезным. Он добавляет опцию «Принудительное завершение» в панели запуска Unity.

el.atomo
источник