Jak zabić nieodpowiadające zadanie GUI w Unity?

29

Poszukuję przyjaznego dla użytkownika sposobu na zabijanie niereagujących aplikacji GUI w Unity.

Spojrzałem przez ramię nowego użytkownika Unity, który próbował użyć gscan2pdf - i gscan2pdf wydaje się być naprawdę zepsuty - po niewielkim majsterkowaniu zużył dużo procesora i pamięci, komputer zaczął się wyrzucać, a użytkownik musiał natychmiast zabić GUI gscan2pdf, który był pełnoekranowy, nie reagował i skupiał się.

Ok, znam kilka sposobów, jak to zrobić:

  • Naciśnij Alt+F2i wpisz xkill-> wybierz okno
  • Naciśnij Alt+F2start xterm, użyj toplub, pgrepa następnie kill PIDlub bezpośrednio użyjpkill

Oba sposoby są niezbyt intuicyjne dla użytkowników zorientowanych na GUI.

Czy jest jakiś skrót do Unity, aby uzyskać coś takiego xkill?

Czy jest to najlepszy sposób na dodanie GUI do Unity-starter? A który?

maxschlepzig
źródło
3
Możesz zdefiniować skrót klawiszowy dla xkill...
Nitin Venkatesh
@nitstorm, ok, opublikuj, jak to zrobić jako odpowiedź, a ja głosuję za nią.
maxschlepzig
Wysłano ze zrzutami ekranu.
Nitin Venkatesh
Nawet nie wiedziałem o xkill ...
AJMansfield

Odpowiedzi:

29

Możesz utworzyć skrót klawiaturowy dla xkill.

  1. Wpisz klawiaturę w Unity Dash i kliknij ikonę. Wybierz kartę skrótów.

  2. Tam przewiń w dół do sekcji niestandardowych skrótów i kliknij +przycisk

  3. Teraz nazwij coś skrótem i pozwól komendzie być, xkilla następnie kliknij OK.

  4. Na koniec kliknij xkillskrót i naciśnij żądaną kombinację klawiszy, aby przypisać skrót i to wszystko :)
  5. Naciśnięcie skrótu klawiaturowego uaktywni się, xkillgdy będzie to potrzebne.

Skróty klawiszowe

keyboard_shortcuts2

Nitin Venkatesh
źródło
1
Dodatek: Aby anulować xkill, kliknij prawym przyciskiem myszy w dowolnym miejscu, a kursor zmieni się z krzyża na domyślną strzałkę.
Parto
5

Najlepszy sposób, jaki znajduję, to użycie okna terminala:

terminal goto:

sudo ps -aux | grep "name of application"

zanotuj identyfikator procesu

sudo kill -9 "processID"

ponieważ, jeśli aplikacja GUI przestanie odpowiadać, na razie spowalnia X (GUI), a wszystkie działania zostaną spowolnione, więc wszelkie działania GUI w celu zamknięcia procesu będą wolne.

Rajesh Pantula
źródło
1
OP nie chce killrozkazu, tak wyraźnie stwierdził w drugim wypunktowanym punkcie.
Nitin Venkatesh
Wow, to zła rada na kilku różnych poziomach - 1. Poprosiłem o GUI lub relatywne rozwiązanie GUI do zabicia zadania 2. ps ... | grep- istnieje polecenie pgrep, które jest również wymienione w pytaniu 3. kill -9wysyła, SIGKILLpod którym program ma nie ma szans na zakończenie w łaskawy sposób - zwykle zawsze należy spróbować kill PIDnajpierw - to wysyła SIGTERM- tylko jeśli proces się nie kończy SIGTERM, należy wydaćkill -9 PID
maxschlepzig
Zwracam też zbyt wiele liczb. Nie sądzę, aby nowicjusze mogli łatwo znaleźć PID bez pomocy.
Gui Imamura,
3

Inną rzeczą, którą możesz zrobić, to uruchomić Monitor systemu. Możesz wybrać proces za pomocą myszy i nacisnąć przycisk „Zakończ proces”, aby go zabić. To powinno nawet działać z niereagującymi procesami, ale nie sądzę, że jest tak silny jak kill -9. Ma tę zaletę, że jest całkowicie rozwiązaniem GUI i jest bardzo podobny do analogicznego Monitora aktywności w Mac OS X. Jest to pomocne dla tych z nas, którzy poruszają się między Mac i Linux.

shadowITninja
źródło
1

Nie próbowałem tego sam, ale ten mały skrypt wygląda na użyteczny. Dodaje opcję „Force quit” do programu uruchamiającego Unity.

el.atomo
źródło