time.sleep ?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
blubber
User
Beiträge: 123
Registriert: Montag 19. März 2007, 09:08

time.sleep ?

Beitragvon blubber » Dienstag 3. April 2007, 13:00

Hi,

eine Frage zu time.sleep()
Kann ich davon ausgehen, dass z.B. ein time.sleep(1) auch wirklich exakt einer Sekunde entspricht? Unabhängig von System und Rechnerleistung? Ist für mich wichtig, weil ich evtl. Messungen im Millisekunden-Bereich machen muss und da sollte das schon genau sein.

Danke
Gruß
BlackJack

Beitragvon BlackJack » Dienstag 3. April 2007, 13:20

Nein davon kannst Du nicht ausgehen. Wirklich genaue Messungen kannst Du auf einem Multitasking-Betriebssystem sowieso vergessen, da kann Dir immer ein anderer Prozess dazwischenkommen und Zeit "klauen".
Zap
User
Beiträge: 533
Registriert: Freitag 13. Oktober 2006, 10:56

Beitragvon Zap » Dienstag 3. April 2007, 13:42

Hab das aus spass mal durchgespielt

Code: Alles auswählen

>>> def test(sleeptime):
...  start = time()
...  sleep(sleeptime)
...  print "%2.9fs" % (time() - start )
...
>>> test(1)
1.000000000s
>>> test(2)
1.999000072s
>>> test(3)
2.998999834s
>>> test(1)
0.999000072s
>>>


sobald meinem Rechner im Hintergrund irgendwas anderes passiert merkt man schon einige Schwankungen.
Costi
User
Beiträge: 544
Registriert: Donnerstag 17. August 2006, 14:21

Beitragvon Costi » Dienstag 3. April 2007, 21:44

hier noch ein anderes interesantes beispiel:

Code: Alles auswählen

>>> filter(lambda n: time.time() == time.time(), xrange(100000) )
[18184, 48078, 56372, 70738, 75535, 76731, 80325, 85116]
cp != mv
Benutzeravatar
Gromit
User
Beiträge: 51
Registriert: Montag 8. Mai 2006, 19:07

Echtzeit-OS?

Beitragvon Gromit » Mittwoch 4. April 2007, 08:51

BlackJack hat geschrieben:Nein davon kannst Du nicht ausgehen. Wirklich genaue Messungen kannst Du auf einem Multitasking-Betriebssystem sowieso vergessen, da kann Dir immer ein anderer Prozess dazwischenkommen und Zeit "klauen".


Gerüchteweise soll es auch sowas wie Echtzeitbetriebssysteme und entsprechende Erweiterungen für Linxu geben.

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder