Étant donné qu'il faut trop de temps pour calculer A, je veux que le calcul s'arrête et que le programme continue pour calculer B. Il serait également utile de savoir à quelle erreur il s'appelle.Comment empêcher python de geler pour travailler sur une équation de grand nombre?
A = 999999999999999999**999999999999999999
B = 9**9
Le programme se fige encore lors de l'utilisation threading.Timer()
import threading
import time
a = 1
def zzz():
global a
print('restarting')
a = 0
threading.Timer(1.0,zzz).start()
a = 1
threading.Timer(1.0, zzz).start()
while 1:
while a == 1:
h = 999999999999999**999999999999999
Vous voulez une sorte de minuterie qui, si elle est déclenchée, passe à l'équation suivante? – vathek
vous pouvez essayer threading.Timer() –
Ma première question serait, avez-vous vraiment besoin de faire cela? Pouvez-vous résoudre votre problème d'une autre manière? Si ce n'est pas le cas et que vous devez faire un tel calcul et utiliser python pour cela, je vous suggérerais de rechercher des threads, spécialement des threads de travail. https://pymotw.com/2/threading/ – theAlse