Les processus Terminal s'arrêtent-ils si Mac est en veille?

23

J'exécute des programmes d'apprentissage automatique Python via Terminal qui prennent des heures à la fois. Si je laisse mon ordinateur sans surveillance, il hiberne - l'écran s'éteint et je dois saisir à nouveau mon mot de passe.

Lorsque cela se produit, mon script est-il annulé, mis en pause ou continue-t-il de la même manière? Je détesterais penser que mon script pourrait être terminé à 99%, puis abandonné parce que mon ordinateur s'est endormi.

Nicholas Hassan
la source
Pour empêcher votre Mac de s'endormir, la caféine est un petit outil utile.
Emil
15
De plus, votre Mac dispose d'un outil intégré appelé caféine. Si vous faites précéder la commande de terminal avec cafféinate, par exemple caffeinate python ..., il ne dormira pas pendant la durée de cette commande particulière.
0942v8653

Réponses:

21

Tous les processus sont interrompus lorsque le système se met en veille, que le processus fasse partie de macOS, d'une application ou d'un code que vous avez écrit vous-même. Une fois le système réveillé, tous les processus continueront de s'exécuter.

nohillside
la source
2
Bien que le programme continue de s'exécuter, selon les dépendances que vous pourriez avoir ou le processus en cours d'exécution, il peut arriver à expiration ou provoquer une exception et se terminer avec une erreur. L'exemple le plus simple auquel je puisse penser est l'accès au réseau. Si vous effectuez une tâche réseau, elle s'endort, la machine reprend, le réseau n'est pas disponible, cela provoquera probablement une erreur.
rovr138
6

Notez qu'il existe une différence entre la mise en veille de l'ordinateur et la veille de l' affichage (toutes deux contrôlées dans le volet Économiseur d'énergie des Préférences Système). Lorsque l'écran est en veille, mais pas l'ordinateur, les programmes de votre ordinateur continuent de fonctionner normalement. Lorsque votre Mac entre en veille , les programmes sont suspendus et reprendront lorsque l'ordinateur sera réveillé (mais certains programmes, en particulier ceux qui dépendent des communications réseau, ne peuvent pas reprendre de manière transparente).

Ben Turner
la source
2
Lorsqu'il est en veille d'affichage, cela nécessite-t-il toujours qu'un utilisateur se connecte normalement?
corbeau