Please ignore secret bonuses. Secret tests do NOT award bonus. Max hw grade is 30+2 bonus efficiency

Do you need help?

Notice Board

Quale il modo migliore di implementare un timeout che interrompa l'esecuzione del programma x dopo tot tempo?

C
Cristal (390 points)
2 4 9
in Programmare in Python by (390 points)
recategorized by
ciao a tutti,

Era uscita già questa mattina in aula questa perplessità che sembra condivisa:

Quale il modo migliore di implementare un timeout che interrompa l'esecuzione del programma x dopo tot tempo su Windows?

Il problema è appunto su Windows, dal momento che qui non si può usare signal.SIGALRM (mi pare fosse questo, giusto?)

(tra l'altro, a cosa è dovuta quest'incompatibilità?)  

Grazie in anticipo a chi risponderà!

ciao;

A.B. Scorpioni
534 views

2 Answers

split (8700 points)
21 59 79
by (8.7k points)
boh, forse io metterei dei "check point" se non potessi usare il signalarm, con time(). ad esempio se sai che hai un ciclo che potrebbe prenderti piu tempo del dovuto controlli time() ad ogni passo e nel caso superi x fai un break del ciclo e poi termini il programma
andrea.sterbini (207940 points)
756 1270 2377
by (208k points)

Su linux si può usare il comando ulimit per limitare memoria e tempo di esecuzione di un processo, su Windows non saprei (lo uso poco)