Python >> Tutoriel Python >  >> Python

Apple - Les processus Terminal s'arrêtent-ils si Mac dort ?

Tous les processus sont mis en pause 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. Après le réveil du système, tous les processus continueront à s'exécuter.

PS:Les processus qui attendaient des données réseau ou disque lors de la mise en veille peuvent cependant rencontrer des délais d'attente. Mais cela peut arriver de toute façon, donc la plupart des processus devraient être capables de gérer cela de toute façon.


Notez qu'il existe une différence entre veille de l'ordinateur et afficher le sommeil (tous deux contrôlés dans la sous-fenêtre Économiseur d'énergie des Préférences Système). Lorsque l'écran est en veille mais que l'ordinateur ne l'est pas, les programmes de votre ordinateur continuent de fonctionner normalement. Lorsque votre Mac entre en veille informatique , les programmes sont mis en pause et reprennent lorsque l'ordinateur est réveillé (mais certains programmes, en particulier ceux qui reposent sur les communications réseau, ne peuvent pas reprendre de manière transparente).


Oui, les processus de terminal comme un script python arrêtent l'exécution lorsque la machine passe en veille.

Pour éviter que votre machine ne se mette en veille sans modifier les paramètres, vous pouvez simplement utiliser l'outil terminal caffeinate . Une fois appelé, il empêchera la machine de dormir jusqu'à ce que vous annuliez le programme en utilisant ctrl+c .

Vous pouvez passer des arguments comme l'identifiant du processus à caffeinate en utilisant le -w drapeau. Vous pouvez trouver un identifiant de processus en utilisant le top commande dans le terminal, par ex. caffeinate -w 36388 empêcherait la machine de se mettre en veille jusqu'à ce que ce processus soit terminé.

Voir le lien ci-joint pour plus d'informations.

https://www.howtogeek.com/245683/how-to-prevent-your-mac-from-sleeping-with-no-additional-software/#:~:text=To%20open%20the%20Terminal%2C% 20vous,vous%20quittez%20le%20Terminal%20en marche.