Anh alten & Fortsetzen einer App oder eines Prozesses in Mac OS X

Anonim

Müssen Sie schnell Rechenleistung freigeben? Sie können dies ganz einfach tun, indem Sie einen aktiven Prozess oder eine aktive Anwendung in Mac OS X vorübergehend anh alten und später wieder aufnehmen. Technisch gesehen ist dies eigentlich das „Stoppen“ und „Fortsetzen“ eines Prozesses, aber ein Stoppen ist nicht mit dem aggressiveren Töten zu verwechseln oder erzwingen Sie das Beenden von Anwendungen, und daher ist die Terminologie des Anh altens oder Anh altens oft einfacher, die beiden zu unterscheiden.

Das bedeutet, dass Sie einen Prozess, der 100 % der CPU verbraucht, vorübergehend anh alten können, während Sie etwas anderes tun, und ihn dann wieder aufnehmen, wenn Sie bereit sind, diesen Prozess seine Arbeit machen zu lassen. Dies wird durch einen Befehlszeilentrick erreicht, und wir werden zwei verschiedene Möglichkeiten behandeln, indem wir die Befehle kill und killall mit den Flags -STOP und -CONT verwenden. Idealerweise haben Sie etwas Komfort und Kenntnisse mit der Befehlszeile, bevor Sie dies verwenden, aber es ist sicherlich nicht notwendig.

Bevor Sie beginnen, starten Sie die Terminal-App, die Sie unter /Applications/Utilities/ finden, und starten Sie auch Activity Monitor, der sich im selben Ordner befindet.

Wie man einen Prozess oder eine App in Mac OS X vorübergehend anhält

Die grundlegende Syntax zum Anh alten einer Anwendung lautet wie folgt, wobei PID die ID des Prozesses ist, den Sie anh alten möchten:

kill -STOP PID

Die PID ist immer eine Zahl, und jeder einzelne Prozess, der auf einem Mac läuft, hat eine zugeordnete ID.

Wenn Sie mit dem Abrufen von Prozess-IDs vertraut sind, wissen Sie bereits, was zu tun ist, wenn Sie nur die obigen Befehle verwenden, aber wenn nicht, dann behandeln wir das als Nächstes, und deshalb haben wir „Activity Monitor"

Die PID finden und den zugehörigen Prozess anh alten

Dies ist die benutzerfreundlichere Methode, die den Aktivitätsmonitor verwendet:

  • Verwenden Sie in der Aktivitätsanzeige die Suchfunktion in der oberen rechten Ecke und geben Sie den Namen der Anwendung ein, die Sie sperren möchten (z. B.: iTunes)
  • Wenn die übereinstimmenden Prozesse und/oder Apps sichtbar sind, suchen Sie die Prozess-ID, indem Sie unter der Sp alte „PID“ nachsehen
  • Fügen Sie die passende PID zum oben genannten Kill-Befehl hinzu, etwa so:
  • kill -STOP 3138

  • Beachten Sie, dass die CPU-Aktivität für diese Prozess-ID jetzt bei 0 % liegt, was darauf hinweist, dass der Prozess angeh alten wurde (technisch gesehen gestoppt)

Vergiss die PID nicht, oder besser noch, schließe das Terminal-Fenster noch nicht ganz, weil es dieselbe PID ist wie Sie die Anwendung fortsetzen, um sie weiterhin verwenden zu können.

Sie werden feststellen, dass die Auswirkungen des Stoppens eines Prozesses auf die CPU-Auslastung dramatisch sind. Dieser Screenshot zeigt, dass iTunes 70 % der CPU verbraucht, während der Visualizer ausgeführt wird, und derselbe iTunes-Prozess, nachdem er mit dem - STOP-Flag. Der Prozess wurde buchstäblich gestoppt:

Diejenigen mit mehr Befehlszeilenkenntnissen ziehen es vielleicht vor, ps statt Activity Monitor zu verwenden, was wirklich ganz einfach ist:

ps aux |grep Name

Ändern Sie „Name“ in den Namen des Beginns eines Prozesses oder einer Anwendung, suchen Sie die PID und fügen Sie diese dann in den Kill-Befehl ein:

kill -STOP 92841

Ob Sie Activity Monitor oder ps verwenden, um die PID abzurufen, ist irrelevant, solange Sie die korrekte Prozess-ID eingeben, wenn Sie den Befehl kill verwenden.

Beachten Sie, dass der Versuch, eine angeh altene Anwendung zu verwenden, fast immer dazu führt, dass Sie den sich drehenden Strandball des Todes sehen, abzüglich der CPU-Auslastung. Wenn Sie die App also erneut verwenden möchten, müssen Sie sie „fortsetzen“.

So setzen Sie eine „angeh altene“ Anwendung oder einen „angeh altenen“ Prozess fort

Das Fortsetzen einer angeh altenen oder angeh altenen Anwendung ist einfach, ändern Sie einfach den Kill-Befehl leicht und verwenden Sie dieselbe Prozess-ID, die Sie aus den vorherigen Schritten abgerufen haben:

kill -CONT PID

Zum Beispiel, um die iTunes-App mit der PID von früher fortzusetzen:

kill -CONT 3138

Und jetzt wird iTunes wieder nutzbar, abzüglich des sich drehenden Wartecursors. Damit einher geht eine Rückkehr zu dem Niveau des früheren CPU-Verbrauchs.

Der folgende Screenshot zeigt diesen Trick mit den Befehlen kill und killall:

Die Verwendung von -STOP und -CONT mit killall ist im Wesentlichen gleich, hat aber einige Einschränkungen in Bezug auf Namen, und daher haben wir stattdessen die direktere Methode der Verwendung von kill basierend auf PID behandelt. Lassen Sie uns dies trotzdem mit killall demonstrieren.

Apps stoppen und fortsetzen nach App-Name

Wenn Sie die Anwendung oder den genauen Prozessnamen kennen, können Sie auch den Befehl „killall“ mit dem Flag -STOP verwenden, um Prozesse anzuh alten.Dies kann für Apps einfacher sein, die einfach anhand eines Namens identifiziert werden können, hat jedoch Einschränkungen, wenn es darum geht, mit Prozessen mit komplexen Namen zu arbeiten oder einen bestimmten Prozess zu pausieren, der doppelte Prozesse mit demselben Namen hat (z. B. eine bestimmte Chrome-Registerkarte oder Fenster gemischt mit vielen „Google Chrome Renderer“-Prozessen), und daher haben wir zuerst den PID-Ansatz behandelt, weil er viel direkter ist.

Der grundlegende H alt-Befehl mit killall lautet wie folgt:

killall -STOP AppName

Nicht sicher, wie die App heißt? Verwenden Sie ps und grep:

ps aux |grep AppName

Zum Beispiel könnten Sie nach „Chrome“ suchen, um alle Prozesse mit „Chrome“ im Namen zu finden:

ps aux|grep Chrome

Oder Sie können den Prozess einfach mit einem bestimmten App-Namen wie folgt ansprechen:

"

killall -STOP -c Google Chrome"

Um Prozesse und Apps mit killall fortzusetzen, muss das Flag von -STOP auf -CONT geändert werden, alles andere ist gleich:

killall -CONT AppName

Zum Beispiel, um die Anwendung mit einem langen Namen fortzusetzen:

"

killall -CONT -c Google Chrome"

Auch hier funktioniert die App/der Prozess weiterhin wie gewohnt und die CPU-Auslastung kehrt auf den Stand vor dem Anh alten zurück.

Apps oder Prozesse ohne Leerzeichen in ihrem Namen können direkt von Killall ohne zusätzliche Flags oder Indikatoren beeinflusst werden, wie iTunes.

Anh alten & Fortsetzen einer App oder eines Prozesses in Mac OS X