Como matar tarefas de GUI não responsivas no Unity?


29

Estou procurando uma maneira nova e amigável para matar aplicativos de GUI não responsivos no Unity.

Eu olhei por cima do ombro de um novo usuário do Unity que tentou usar o gscan2pdf - e o gscan2pdf parece realmente quebrado - depois de não mexer muito, ele consumiu muita CPU e memória, o PC começou a lixeira e o usuário precisava matar imediatamente a GUI do gscan2pdf que era de tela cheia, sem resposta e tinha o foco.

Ok, eu sei algumas maneiras de fazer isso:

  • Clique Alt+F2e digite xkill-> selecione a janela
  • Clique em Alt+F2Iniciar xterm, use topou pgrepe, em seguida, kill PIDou use diretamentepkill

Ambas são formas que não são muito intuitivas para usuários centrados na GUI.

Existe algum atalho do Unity para obter algo parecido xkill?

Ou é a melhor maneira de GUI para adicionar uma GUI de primeira linha ao iniciador do Unity? E qual?


3
Você pode definir um atalho de tecla para xkill..
Nitin Venkatesh

@nitstorm, ok, poste como fazê-lo como resposta e eu votarei para cima.
maxschlepzig

Postado com screenshots.
Nitin Venkatesh

Eu nem sabia sobre a coisa xkill ...
AJMansfield

Respostas:


29

Você pode criar um atalho de teclado para xkill.

  1. Digite teclado no Unity Dash e clique no ícone. Selecione a guia de atalhos.

  2. Lá, role para baixo até a seção de atalhos personalizados e clique no +botão

  3. Agora, nomeie seu atalho como algo e deixe o comando ser xkille clique em ok.

  4. Finalmente, clique no xkillatalho e pressione a combinação de teclas desejada para atribuir um atalho a ele e pronto :)
  5. Pressionar o atalho do teclado será ativado xkillsempre que você precisar.

atalhos do teclado

keyboard_shortcuts2


11
Uma adição: para cancelar xkill, clique com o botão direito do mouse em qualquer lugar e o cursor mudará de uma cruz para a seta padrão.
Parto 13/06

5

A melhor maneira que eu encontro é usando a janela do terminal:

ir para o terminal:

sudo ps -aux | grep "name of application"

anote o ID do processo

sudo kill -9 "processID"

desde que, se o aplicativo da GUI ficar sem resposta, por um tempo, ele abrandará o X (GUI) e todas as ações ficarão mais lentas, portanto, qualquer ação da GUI para fechar o processo será lenta.


11
O OP não quer o killcomando, ele afirmou especificamente no segundo ponto com marcadores.
Nitin Venkatesh

Uau, esse é um péssimo conselho em vários níveis diferentes - 1. Solicitei uma solução GUI ou GUI-relatic para matar uma tarefa 2. ps ... | grep- existe o comando pgrep, que também é mencionado na pergunta 3. kill -9envia SIGKILLsob o qual o programa nenhuma chance de terminar de uma maneira graciosa - geralmente se deve sempre tentar kill PIDprimeiro - isso envia SIGTERM- somente se o processo não terminar SIGTERM, deve-se emitir akill -9 PID
maxschlepzig

Além disso, retorno muitos números. Eu não acho que os novatos encontrarão facilmente o PID sem ajuda.
Gui Imamura

3

Outra coisa que você pode fazer é executar o System Monitor. Você pode selecionar um processo com o mouse e clicar no botão "Finalizar processo" para matá-lo. Isso deve funcionar com processos que não respondem, mas não acho que seja tão forte quanto kill -9. Ele tem a vantagem de ser uma solução totalmente GUI e muito semelhante ao Monitor de Atividade análogo no Mac OS X. Isso é útil para aqueles que se movem entre o Mac e o Linux.


1

Não tentei sozinho, mas esse pequeno script parece útil. Ele adiciona uma opção "Forçar saída" ao iniciador de unidade.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.