Jak wstrzymać & Wznawianie aplikacji lub procesu w systemie Mac OS X

Anonim

Chcesz szybko zwolnić trochę mocy obliczeniowej? Możesz to łatwo zrobić, tymczasowo wstrzymując, a następnie wznawiając dowolny aktywny proces lub aplikację w systemie Mac OS X. Technicznie rzecz biorąc, jest to właściwie „zatrzymywanie” i „kontynuowanie” procesu, ale zatrzymania nie należy mylić z bardziej agresywnym zabijaniem lub wymusić zamknięcie aplikacji, a zatem terminologia wstrzymywania lub zatrzymywania jest często łatwiejsza do rozróżnienia.

Oznacza to, że możesz wziąć proces, który zużywa 100% procesora, i tymczasowo go wstrzymać, gdy robisz coś innego, a następnie wznowić go, gdy będziesz gotowy, aby proces wykonał swoje zadanie. Osiąga się to za pomocą sztuczki wiersza poleceń, a my omówimy dwa różne sposoby, aby to zrobić, używając poleceń kill i killall z flagami -STOP i -CONT. Idealnie byłoby, gdybyś miał trochę wygody i wiedzy z wiersza poleceń przed użyciem tego, ale z pewnością nie jest to konieczne.

Przed rozpoczęciem uruchom aplikację Terminal, którą można znaleźć w katalogu /Applications/Utilities/, a także uruchom Monitor aktywności, który znajduje się w tym samym folderze.

Jak tymczasowo zawiesić proces lub aplikację w systemie Mac OS X

Podstawowa składnia zawieszania aplikacji jest następująca, gdzie PID to identyfikator procesu, który chcesz wstrzymać:

kill -STOP PID

PID jest zawsze liczbą, a każdy proces uruchomiony na komputerze Mac ma powiązany identyfikator.

Jeśli jesteś zaznajomiony z pobieraniem identyfikatorów procesów, to wiesz już, co robić, używając samych powyższych poleceń, ale jeśli nie, to tym zajmiemy się w następnej kolejności i dlatego uruchomiliśmy „Aktywność Monitor"

Znajdowanie PID i zatrzymywanie powiązanego procesu

To jest bardziej przyjazna dla użytkownika metoda, wykorzystująca Monitor aktywności:

  • W Monitorze aktywności użyj funkcji wyszukiwania w prawym górnym rogu i wpisz nazwę aplikacji, którą chcesz zawiesić (np.: iTunes)
  • Po wyświetleniu pasujących procesów i/lub aplikacji znajdź identyfikator procesu, patrząc w kolumnie „PID”
  • Dodaj pasujący PID do powyższego polecenia kill, na przykład:
  • zabij -STOP 3138

  • Zauważ, że aktywność procesora dla tego identyfikatora procesu wynosi teraz 0%, co wskazuje, że proces został wstrzymany (technicznie rzecz biorąc, zatrzymany)

Nie zapomnij o PID lub jeszcze lepiej nie zamykaj jeszcze całkiem okna Terminala, ponieważ ten sam PID jak wznowisz działanie aplikacji, aby nadal móc z niej korzystać.

Wpływ zatrzymania procesu na użycie procesora jest dramatyczny, ten zrzut ekranu pokazuje, że iTunes zużywa 70% procesora podczas działania jego wizualizatora i ten sam proces iTunes po zatrzymaniu za pomocą - flaga STOP. Proces został dosłownie zatrzymany:

Osoby bardziej zaznajomione z wierszem poleceń mogą preferować używanie ps zamiast Monitora aktywności, co jest naprawdę całkiem proste:

ps aux |grep Nazwa

Zmień „Nazwę” na dowolną nazwę początku procesu lub aplikacji, znajdź PID, a następnie umieść go w poleceniu kill:

zabij -STOP 92841

Nie ma znaczenia, czy używasz Monitora aktywności, czy ps do pobrania PID, o ile wprowadzisz poprawny identyfikator procesu podczas używania polecenia kill.

Pamiętaj, że próba użycia wstrzymanej aplikacji prawie zawsze kończy się wyświetleniem wirującej piłki plażowej śmierci, pomniejszonej o obciążenie procesora. Dlatego jeśli chcesz ponownie korzystać z aplikacji, musisz ją „wznowić”.

Jak wznowić „zatrzymaną” aplikację lub proces

Wznawianie zatrzymanej lub wstrzymanej aplikacji jest proste, wystarczy nieco zmienić polecenie kill i użyć tego samego identyfikatora procesu, który został pobrany z poprzednich kroków:

kill -CONT PID

Na przykład, aby wznowić aplikację iTunes przy użyciu wcześniejszego PID:

zabij -CONT 3138

A teraz iTunes znów staje się użyteczny, bez obracającego się kursora oczekiwania. Wraz z tym następuje powrót do wcześniejszego poziomu zużycia procesora.

Zrzut ekranu poniżej pokazuje tę sztuczkę przy użyciu poleceń kill i killall:

Używanie -STOP i -CONT z killall jest zasadniczo takie samo, ale ma pewne ograniczenia dotyczące nazw, dlatego omówiliśmy bardziej bezpośrednią metodę użycia kill w oparciu o PID. Niemniej jednak zademonstrujmy to również za pomocą killall.

Zatrzymywanie i kontynuowanie aplikacji według nazwy aplikacji

Jeśli znasz aplikację lub dokładną nazwę procesu, możesz również użyć polecenia „killall” z flagą -STOP, aby zatrzymać procesy.Może to być łatwiejsze w przypadku aplikacji, które można łatwo zidentyfikować na podstawie nazwy, ale ma ograniczenia, jeśli chodzi o pracę z procesami o złożonych nazwach lub wstrzymywanie określonego procesu, który ma zduplikowane procesy o tej samej nazwie (np. określona karta Chrome lub okno zmieszane z wieloma procesami „Google Chrome Renderer”), dlatego najpierw omówiliśmy podejście PID, ponieważ jest ono znacznie bardziej bezpośrednie.

Podstawowe polecenie zatrzymania w killall jest następujące:

killall -STOP nazwa aplikacji

Nie wiesz, jaka jest nazwa aplikacji? Użyj ps i grep:

ps aux |grep Nazwa aplikacji

Możesz na przykład wyszukać „Chrome”, aby znaleźć wszystkie procesy z „Chrome” w nazwie:

ps aux|grep Chrome

Możesz też po prostu wskazać proces za pomocą określonej nazwy aplikacji, takiej jak:

"

killall -STOP -c Google Chrome"

Wznawianie procesów i aplikacji za pomocą killall polega na zmianie flagi z -STOP na -CONT, wszystko inne jest takie samo:

killall -CONT Nazwa aplikacji

Na przykład, aby wznowić aplikację z długą nazwą:

"

killall -CONT -c Google Chrome"

Ponownie aplikacja/proces będzie działać normalnie, a użycie procesora powróci do poziomu sprzed wstrzymania.

Killall może mieć bezpośredni wpływ na aplikacje lub procesy bez spacji w nazwie bez żadnych dodatkowych flag ani wskaźników, takich jak iTunes.

Jak wstrzymać & Wznawianie aplikacji lub procesu w systemie Mac OS X