Czy procesy terminalu są zatrzymywane, jeśli komputer Mac śpi?

23

Korzystam z niektórych programów uczenia maszynowego w języku Python za pośrednictwem terminala, których ukończenie zajmuje kilka godzin. Jeśli zostawiam komputer bez nadzoru, hibernuje - ekran gaśnie i muszę ponownie wpisać hasło.

Kiedy to się stanie, czy mój skrypt zostanie anulowany, wstrzymany lub kontynuuje to samo? Nie chciałbym myśleć, że mój skrypt może zostać ukończony w 99%, a następnie zostaje przerwany, ponieważ mój komputer poszedł spać.

Nicholas Hassan
źródło
Aby zapobiec zasypianiu komputera Mac, kofeina jest przydatnym małym narzędziem.
Emil
15
Ponadto komputer Mac ma wbudowane narzędzie o nazwie kofeina. Jeśli poprzednio wydałeś polecenie kofeinowe, np. caffeinate python ...Nie będzie ono spać na czas trwania tego konkretnego polecenia.
0942v8653

Odpowiedzi:

21

Wszystkie procesy zostają wstrzymane, gdy system przechodzi w tryb uśpienia, niezależnie od tego, czy proces ten jest częścią macOS, aplikacji lub kodu napisanego samodzielnie. Po ponownym przebudzeniu systemu wszystkie procesy będą kontynuowane.

nohillside
źródło
2
Chociaż program będzie nadal działał, w zależności od zależności, jakie możesz mieć lub procesu, może on przekroczyć limit czasu lub spowodować wyjątek i wyjść z błędem. Najprostszym przykładem, jaki mogę wymyślić, jest dostęp do sieci. Jeśli wykonujesz jakieś zadanie sieciowe, śpi, urządzenie wznawia pracę, sieć jest niedostępna, prawdopodobnie spowoduje to błąd.
rovr138
6

Należy pamiętać, że istnieje różnica między trybem uśpienia komputera a trybem uśpienia wyświetlacza (oba kontrolowane w panelu Oszczędzanie energii w Preferencjach systemowych). Gdy ekran śpi, ale komputer nie działa, programy na komputerze nadal działają normalnie. Gdy komputer Mac przechodzi w stan uśpienia komputera , programy są wstrzymywane i wznawiane po przebudzeniu komputera (ale niektóre programy, zwłaszcza te, które korzystają z komunikacji sieciowej, nie mogą wznowić bezproblemowo).

Ben Turner
źródło
2
Czy w trybie uśpienia wyświetlacza nadal wymaga to zwykłego logowania?
kruk