Obere Grenze in Python-Zeit.sleep()?
Gibt es eine Obergrenze, wie lange können Sie einen thread mit der Zeit.sleep()? Ich habe Probleme mit dem schlafen mein Skript für längere Zeit (D. H., über 1k Sekunden). Dieses Problem hat sich auf Windows-und Unix-Plattformen.
- Ja, es gibt eine Obergrenze: Wenn jemand stolpert über das Netzkabel der Maschine 😉
- Was "die Frage" sind Sie mit? Werden bestimmte.
- Meine Vermutung ist, dass es Plattform-spezifische, aber ich habe nicht genug wissen, um beweist nichts.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich nehme an, je länger die Zeit, desto wahrscheinlicher ist situation beschrieben, in der Dokumentation:
Andere haben erklärt, warum Sie schlafen könnte für weniger als Sie gefragt haben, aber nicht zeigen, wie Sie den Umgang mit diesem. Wenn Sie brauchen, um stellen Sie sicher, dass Sie den Schlaf für mindestens n Sekunden können Sie folgenden code verwenden wie:
Diesem schlafen können, mehr als n, aber es wird nie wieder vor dem schlafen mindestens n Sekunden.
Laut der Dokumentation, die Zeit.der Schlaf nimmt alle nicht-null-Zahl [1], wie Sie wahrscheinlich wissen. Allerdings sind Sie unter dem Einfluss Ihrer Betriebssysteme scheduler als gut [1].
[1] http://docs.python.org/library/time.html
können Sie verhindern, dass mögliche Probleme, indem Sie den Schlaf mit kurzer Verzögerung in die Schleife:
Eigentliche Antwort, zumindest für meine Maschine:
4294967.2950000003911900999... Sekunden.
OverflowError: sleep-Länge ist zu groß