¿Cómo matar una tarea GUI que no responde en Unity?

29

Estoy buscando una nueva forma fácil de usar para eliminar aplicaciones GUI que no responden en Unity.

Miré por encima del hombro de un nuevo usuario de Unity que trató de usar gscan2pdf, y gscan2pdf parece estar realmente roto, después de no realizar muchos ajustes, consumió mucha CPU y memoria, la PC comenzó a destruir y el usuario necesitaba matar de inmediato la GUI de gscan2pdf que era de pantalla completa, no respondía y tenía el foco.

Ok, conozco algunas formas de hacerlo:

  • Presiona Alt+F2y escribe xkill-> selecciona la ventana
  • Presione Alt+F2inicio xterm, use topo pgrepy luego kill PIDo use directamentepkill

Ambas son formas que no son muy intuitivas para los usuarios centrados en la GUI.

¿Hay algún atajo de Unity para obtener algo así xkill?

¿O es la mejor forma de GUI para agregar una GUI superior al Unity-starter? Y cual?

maxschlepzig
fuente
3
Podría definir un atajo de teclado para xkill..
Nitin Venkatesh
@nitstorm, ok, publique cómo hacerlo como respuesta y lo votaré.
maxschlepzig
Publicado con capturas de pantalla.
Nitin Venkatesh
Ni siquiera sabía lo de xkill ...
AJMansfield

Respuestas:

29

Podrías crear un atajo de teclado para xkill.

  1. Escriba keyboard en el Unity Dash y haga clic en el icono. Seleccione la pestaña de accesos directos.

  2. Allí, desplácese hacia abajo a la sección de accesos directos personalizados y haga clic en el +botón

  3. Ahora asigne un nombre a su acceso directo, deje que el comando sea xkilly luego haga clic en Aceptar.

  4. Finalmente, haga clic en el xkillacceso directo y presione el combo de teclas deseado para asignarle un acceso directo y listo :)
  5. Al presionar el atajo de teclado se activará xkillcuando lo necesite.

atajos de teclado

keyboard_shortcuts2

Nitin Venkatesh
fuente
1
Una adición: para cancelar una xkill, simplemente haga clic derecho en cualquier lugar y el cursor cambiará de una cruz a la flecha predeterminada.
Parto
5

La mejor manera que encuentro es usar la ventana de terminal:

ir a la terminal:

sudo ps -aux | grep "name of application"

anote la ID del proceso

sudo kill -9 "processID"

desde entonces, si la aplicación GUI deja de responder, por el momento se ralentiza la X (GUI) y todas las acciones se ralentizarán, por lo que cualquier acción de GUI para cerrar el proceso será lenta.

Rajesh Pantula
fuente
1
El OP no quiere el killcomando, lo ha declarado específicamente en el segundo punto con viñetas.
Nitin Venkatesh
Wow, este es un mal consejo en varios niveles diferentes: 1. Pedí una GUI o una solución GUI-relatic para matar una tarea 2. ps ... | grep- Existe el comando pgrep, que también se menciona en la pregunta 3. kill -9Envíos SIGKILLbajo los cuales el programa tiene no hay posibilidad de terminar de una manera amable, por lo general, uno siempre debe intentar kill PIDprimero, esto envía SIGTERM, solo si el proceso no finaliza SIGTERM, uno debe emitir unkill -9 PID
maxschlepzig
Además, devuelvo demasiados números. No creo que los novatos encuentren fácilmente el PID sin ayuda.
Gui Imamura
3

Otra cosa que puede hacer es ejecutar System Monitor. Puede seleccionar un proceso con el mouse y presionar el botón "Finalizar proceso" para eliminarlo. Esto incluso debería funcionar con procesos que no responden, pero no creo que sea tan fuerte como kill -9. Tiene la ventaja de que es una solución totalmente GUI y es muy similar al Monitor de actividad análogo en Mac OS X. Eso es útil para aquellos de nosotros que nos movemos de un lado a otro entre Mac y Linux.

shadowITninja
fuente
1

No lo intenté solo, pero este pequeño script parece útil. Agrega una opción de "Forzar salida" al lanzador de la unidad.

el.atomo
fuente