Grazie a tutti quelli che hanno risposto alla mia precedente mail "Cronojob in Python con orari variabili" e al mio amico Lorenzo che mi ha dato delle soluzioni alternative, abbiamo trovato x metodi per temporizzare una funzione/metodo/script in python evitando di fare while(true):sleep(x)

1. Utilizzare il cronojob di sistema della macchina.
     * Vantaggio: indipendente dell'applicativo
     * Vantaggio: non crasha con l'applicazione
     * Svantaggio: è un orario fisso, non modificabile dallo script in
       python a meno di magheggi mostruosi che possono danneggiare gli
       altri cronojob
2. Se è parte di un applicativo server costruito con un framework (ho
   controllato flask e django), quest'ultimo ha un modulo pensato per i
   cronojob
     * Vantaggio: una volta sviluppata l'applicazione sarà presente in
       tutte le installazioni senza configurazioni di applicazioni esterne
     * Vantaggio: è possibile cambiare i tempi dall'interno
       dell'applicativo
     * Svantaggio: se cambiano i moduli devi cambiare lo script che
       gestisce il cronojob
3. Soluzione di Lorenzo: l'applicativo è un deamon/service che lavora
   in background
     * Vantaggio: posso cambiare quando eseguirlo dall'interno
       dell'applicativo python
     * Svantaggio: implementazione diversa per Unix e Windows

Per i più curiosi qui <https://gist.github.com/fundor333/aaa0b1b46d1e961d6df4828eb82ec3f6> trovate la mia implementazione di un deamon e di un service (si ringrazia stackoverflow per i contributi dati a queste due classi)

--

Fundor333

_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a