J'ai un petit script que je veux exécuter toutes les 15 minutes. Je peux y parvenir de deux manières:

  1. En mettant tout le code dans la boucle while while True: et à la fin time.sleep(900).

  2. En planifiant une tâche pour exécuter le script toutes les 15 minutes une fois.

Les deux fonctionneront bien, mais je ne suis pas sûr que le script garde la ressource occupée pendant le sommeil.

Veuillez suggérer ... Laquelle est la meilleure approche?

0
Sourabh Saini 16 janv. 2017 à 15:54

2 réponses

Meilleure réponse

Je pense que le système de planification comme cron sur Linux (je ne sais pas pour Windows, mais je m'attendrais à une situation similaire là-bas) est la voie à suivre en raison de ses nombreux avantages:

  • vous pouvez compter dessus, c'est un système robuste et mature
  • il démarre un nouveau processus à chaque fois, économisant ainsi des ressources et protégeant le système d'une éventuelle fuite de mémoire ou de descripteur de fichier dans un programme de longue durée
  • il envoie la sortie et signale les plantages au propriétaire
  • vous n'avez pas à mettre votre processus en arrière-plan

Les désavantages:

  • si vous avez besoin de vous souvenir d'un état entre les exécutions, vous devez l'enregistrer dans un fichier
0
VPfB 16 janv. 2017 à 14:47

La planification est plus stable et les scripts python sont plus flexibles.

Time.sleep () ou script de planification. Quelle est la meilleure approche?…

Si vous effectuez un programme comme une "sauvegarde périodique" ou une journalisation ou une vérification de quelque chose, la deuxième méthode est préférable car vous n'avez pas besoin de la gérer une fois que vous l'avez définie.

0
Zealseeker 16 janv. 2017 à 14:06