En éste caso, lo que haces es ejecutar el método self.eliminarProxy en ese preciso intentante y pasarle al Timer lo que devuelve (posiblemente, None), de modo que en 30 segundos intentará ejecutar None y fallará.
De hecho, no ocurre porque aunque preparas la variable timer, nunca llamas al método start(), por lo que nunca llegará a ejecutarse.
De acuerdo a la documentación de
thrading.Timer
, el segundo argumento debe ser una referencia a un método o función.https://github.com/jose-nieto19/Parcial1_main/blob/067063932e1d45fdbe981a5b64c26bf542731751/iceflix/main.py#L75
En éste caso, lo que haces es ejecutar el método
self.eliminarProxy
en ese preciso intentante y pasarle alTimer
lo que devuelve (posiblemente,None
), de modo que en 30 segundos intentará ejecutarNone
y fallará.De hecho, no ocurre porque aunque preparas la variable
timer
, nunca llamas al métodostart()
, por lo que nunca llegará a ejecutarse.La manera correcta sería algo como: