Wie man eine App oder einen Prozess in Mac OS X pausiert und fortsetzt

Müssen Sie schnell etwas Rechenleistung freisetzen? Sie können dies leicht tun, indem Sie vorübergehend einen aktiven Prozess oder eine Anwendung in Mac OS X anhalten und später wieder aufnehmen. Technisch gesehen "stoppt" dies einen Prozess, aber ein Stopp ist nicht mit dem aggressiveren Töten zu verwechseln oder das Beenden von Anträgen erzwingen und somit die Terminologie des Pausierens oder Anhaltens ist oft leichter zu unterscheiden.

Das bedeutet, dass Sie einen Prozess ausführen können, der 100% CPU verbraucht, und unterbrechen Sie ihn vorübergehend, während Sie etwas anderes machen, und nehmen Sie ihn dann wieder auf, wenn Sie bereit sind, diesen Prozess ausführen zu lassen. Dies wird durch einen Befehlszeilentrick erreicht, und wir werden zwei verschiedene Möglichkeiten dafür behandeln, indem wir die Befehle kill und killall mit den Flags -STOP und -CONT verwenden. Idealerweise werden Sie vor der Benutzung etwas Trost und Wissen mit der Befehlszeile haben, aber das ist sicherlich nicht notwendig.


Bevor Sie beginnen, starten Sie die Terminal-App unter / Programme / Dienstprogramme / und starten Sie den Activity Monitor, der sich im selben Ordner befindet.

Kurzzeitiges Suspendieren Beenden Sie einen Prozess oder eine App in Mac OS X

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

kill -STOP PID

Die PID ist immer eine Nummer und jeder einzelne Prozess, der auf einem Mac ausgeführt wird, hat eine zugehörige ID.

Wenn Sie mit dem Abrufen von Prozess-IDs vertraut sind, wissen Sie bereits, was Sie tun müssen, indem Sie nur die oben genannten Befehle verwenden. Wenn nicht, dann werden wir das als nächstes behandeln, und deshalb haben wir "Activity Monitor" gestartet.

Finden der PID & Anhalten des assoziierten Prozesses

Dies ist die benutzerfreundlichere Methode unter Verwendung des Aktivitätsmonitors:

  • Verwenden Sie im Aktivitätsmonitor die Suchfunktion in der oberen rechten Ecke und geben Sie den Namen der Anwendung ein, die Sie deaktivieren möchten (z. B. iTunes).
  • Wenn die entsprechenden Prozesse und / oder App (s) sichtbar sind, suchen Sie die Prozess-ID, indem Sie in der Spalte "PID" nachsehen
  • Fügen Sie die entsprechende PID dem oben genannten Befehl kill 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 pausiert wurde (technisch gestoppt).

Vergessen Sie nicht die PID, oder noch besser, schließen Sie das Terminal-Fenster noch nicht, denn mit dieser PID werden Sie die Anwendung fortsetzen, um sie wieder verwenden zu können.

Sie werden feststellen, dass der Effekt des Anhaltens eines Prozesses auf die CPU-Auslastung dramatisch ist. Dieser Screenshot zeigt, dass iTunes 70% CPU verbraucht, während Visualizer läuft, und den gleichen iTunes Prozess, nachdem er mit dem Flag -STOP gestoppt wurde. Der Prozess wurde buchstäblich auf Eis gelegt:

Diejenigen mit mehr Kommandozeilen-Kenntnissen bevorzugen vielleicht eher ps als Activity Monitor, was wirklich ziemlich einfach ist:

ps aux |grep Name

Ändern Sie "Name" in das, was der Anfang eines Prozess- oder Anwendungsnamens ist, suchen Sie die PID und geben Sie diese dann in den Befehl kill ein:

kill -STOP 92841

Ob Sie Activity Monitor oder ps zum Abrufen der PID verwenden, ist irrelevant, solange Sie die richtige Prozess-ID eingeben, wenn Sie den Befehl kill verwenden.

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

Wie man eine "beendete" Anwendung oder einen Prozess fortsetzt

Das Fortsetzen einer gestoppten oder pausierten Anwendung ist einfach. Ändern Sie einfach den Befehl kill und verwenden Sie dieselbe Prozess-ID, die Sie in den vorherigen Schritten abgerufen haben:

kill -CONT PID

Zum Beispiel, um die iTunes App mit der PID von früher wieder aufzunehmen:

kill -CONT 3138

Und jetzt wird iTunes wieder nutzbar, abzüglich des drehenden Wartecursors. Damit einher geht eine Rückkehr zu dem früheren Niveau des 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 die gleiche, aber es gibt einige Einschränkungen bezüglich der Namen, und so haben wir die direktere Methode der Verwendung von Kill basierend auf PID behandelt. Nichtsdestotrotz, lasst uns das auch mit killall demonstrieren.

Stoppen und Fortsetzen von Anwendungen 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 anzuhalten. Dies kann für Anwendungen einfacher sein, die anhand eines Namens einfach identifiziert werden können. Es gibt jedoch Einschränkungen beim Arbeiten mit Prozessen mit komplexen Namen oder beim Anhalten eines bestimmten Prozesses mit doppelten Prozessen mit demselben Namen (wie bei einer bestimmten Chrome-Registerkarte) Oder ein Fenster, das mit vielen "Google Chrome Renderer" -Prozessen gemischt wurde, und so haben wir zuerst den PID-Ansatz behandelt, weil er viel direkter ist.

Der grundlegende Befehl halt mit killall lautet wie folgt:

killall -STOP AppName

Nicht sicher, was der App-Name ist? Verwenden Sie ps und grep:

ps aux |grep AppName

Sie können beispielsweise nach "Chrome" suchen, um alle Prozesse mit "Chrome" im Namen zu finden:

ps aux|grep Chrome

Oder Sie richten den Prozess einfach mit einem bestimmten App-Namen wie folgt ein:

killall -STOP -c "Google Chrome"

Bei der Wiederaufnahme von Prozessen und Anwendungen mit killall muss das Flag von -STOP nach -CONT geändert werden, alles andere ist gleich:

killall -CONT AppName

Um beispielsweise die Anwendung mit einem langen Namen fortzusetzen:

killall -CONT -c "Google Chrome"

Auch hier funktioniert die App / der Prozess wie gewohnt, und die CPU-Auslastung wird wieder an den ursprünglichen Stand gebracht, bevor sie angehalten wurde.

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