Ich suche nach einer neuen benutzerfreundlichen Methode, um nicht reagierende GUI-Anwendungen unter Unity zu entfernen.
Ich habe einem neuen Unity-Benutzer, der versucht hat, gscan2pdf zu verwenden, über die Schulter geschaut - und gscan2pdf scheint wirklich kaputt zu sein - nachdem nicht viel daran herumgebastelt wurde, verbrauchte der PC viel CPU und Speicher, und der Benutzer musste sofort die gscan2pdf-GUI töten, die war im Vollbildmodus, nicht ansprechbar und hatte den Fokus.
Ok, ich weiß, wie es geht:
- Drücken Sie
Alt+F2
und geben Sie einxkill
-> wählen Sie das Fenster - Drücke
Alt+F2
Startxterm
, benutzetop
oderpgrep
und dannkill PID
oder benutze direktpkill
Beides sind Möglichkeiten, die für GUI-zentrierte Benutzer nicht sehr intuitiv sind.
Gibt es eine Unity-Verknüpfung, um so etwas zu bekommen xkill
?
Oder ist die beste GUI-Methode, um dem Unity-Starter eine top-ähnliche GUI hinzuzufügen? Und welches?
quelle
xkill
... definieren .Antworten:
Sie können eine Tastenkombination für erstellen
xkill
.Geben Sie keyboard in den Unity Dash ein und klicken Sie auf das Symbol. Wählen Sie die Registerkarte Verknüpfungen.
Scrollen Sie dort zum Abschnitt mit den benutzerdefinierten Verknüpfungen und klicken Sie auf die
+
SchaltflächeGeben Sie Ihrer Verknüpfung einen Namen, geben Sie den Befehl ein
xkill
und klicken Sie auf OK.xkill
Verknüpfung und drücken Sie die gewünschte Tastenkombination, um ihr eine Verknüpfung zuzuweisen, und das wars :)xkill
wann immer Sie es benötigen.quelle
xkill
, klicken Sie mit der rechten Maustaste auf eine beliebige Stelle, und der Cursor ändert sich von einem Kreuz in den Standardpfeil.Der beste Weg, den ich finde, ist die Verwendung des Terminalfensters:
gehe zum Terminal:
Notieren Sie die Prozess-ID
Wenn eine GUI-Anwendung nicht mehr reagiert, verlangsamt sie vorübergehend die X-Funktion (GUI) und alle Aktionen werden verlangsamt. Daher ist jede GUI-Aktion zum Schließen des Prozesses langsam.
quelle
kill
Befehl nicht, das hat er im zweiten Punkt ausdrücklich angegeben.ps ... | grep
- Es gibt den Befehlpgrep
, der auch in der Frage 3.kill -9
Sends erwähnt wird,SIGKILL
unter der sich das Programm befindet keine Chance , in einem freundlichen Art und Weise zu beenden - versuchen sollte man in der Regel immerkill PID
zuerst - das sendetSIGTERM
- nur dann , wenn der Prozess nicht beendenSIGTERM
, sollte man eine Ausgabekill -9 PID
Sie können auch den Systemmonitor ausführen. Sie können einen Prozess mit der Maus auswählen und auf die Schaltfläche "Prozess beenden" klicken, um ihn zu beenden. Dies sollte sogar mit nicht reagierenden Prozessen funktionieren, aber ich denke nicht, dass es so stark ist wie kill -9. Es hat den Vorteil, dass es sich um eine vollständige GUI-Lösung handelt und dem analogen Activity Monitor in Mac OS X sehr ähnlich ist. Dies ist hilfreich für diejenigen von uns, die zwischen Mac und Linux hin und her wechseln.
quelle
Ich habe es nicht selbst ausprobiert, aber dieses kleine Skript sieht nützlich aus. Dem Unity Launcher wird die Option "Beenden erzwingen" hinzugefügt.
quelle
Skript zum Senden von SIGTERM an das aktuell aktive Fenster basierend auf einer ähnlichen Frage .
quelle