In deze tutorial zullen we de Python-tijd doornemen.slaap () methode. In onze vorige tutorial hebben we gekeken naar de tijdmodule, de standaard utility library voor het uitvoeren van verschillende timing taken.
De Python-tijd.sleep() methode wordt gebruikt om de uitvoering van het huidige programma/thread voor een bepaalde hoeveelheid tijd te stoppen.
het huidige programma / thread doet in wezen niets in deze periode, dus het “slaapt” gedurende die tijd, voordat het verder gaat met zijn huidige status.,
laten we eens kijken hoe we deze functie kunnen gebruiken.
Python-tijd.sleep () Usage
Deze functie is een onderdeel van de time
module.slapen(). We moeten eerst de tijdmodule importeren.
import time
om de uitvoering van het programma te stoppen, moeten we het aantal seconden als argument opgeven.,
uitvoer
Going to sleep for 5 secondsWoke up after 5 seconds
Als u dit op uw machine uitprobeert, zal uw programma 5 seconden stoppen tussen de twee uitgangen, omdat het voor die tijd slaapt.
we kunnen ook het aantal seconden opgeven als een floating-point getal, zodat we kunnen slapen voor 0.001
seconden (1 milliseconde) of zelfs 0.0000001
seconden (1 microseconde).
Dit maakt de vertraging zo nauwkeurig mogelijk, binnen de grenzen van de floating-point-en klokprecisie.,
uitvoer
Going to sleep for 2 millisecondsWoke up after 2 milliseconds
om de exacte slaaptijd te meten, kunnen we de methode time.time()
gebruiken om een timer te starten. Het verschil tussen de startwaarde en de eindwaarde van de timer zal onze uitvoeringstijd zijn.
laten we onze werkelijke slaaptijd testen in het bovenstaande programma.
uitvoer
Going to sleep for 2 millisecondsWoke up after 0.0020711421966552734 seconds
Hier is de tijd niet precies 2 milliseconden, zoals u kunt zien. Het is ongeveer 2.071
milliseconden, wat iets groter is dan het.,
Dit is te wijten aan enige vertragingen in het toewijzen van bronnen, procesplanning, enz.van het besturingssysteem, wat een kleine vertraging kan veroorzaken.
De omvang van deze vertraging zal verschillen omdat u de exacte status van het besturingssysteem op een bepaald moment niet kent.
variabele tijdvertraging voor tijd.sleep ()
we kunnen een variabele doorgeven aan time.sleep()
, als je om een of andere reden een andere vertraging wilt.,
import timedelays = for delay in delays: print('Sleeping for', delay, 'seconds') time.sleep(delay)
Output
Sleeping for 1 secondsSleeping for 1.5 secondsSleeping for 2 seconds
nu we time.sleep()
voor ons programma hebben behandeld, kunnen we hetzelfde doen voor threads ook.
met Python-tijd.sleep () op een Thread
Dit is een nuttige functie in het kader van multi-threading, omdat meerdere threads moeten wachten tot een specifieke bron wordt vrijgegeven.
het onderstaande fragment laat zien hoe we meerdere threads kunnen laten wachten en uitgangen kunnen afdrukken met behulp van Python time.sleep()
.,
uitvoer
Starting Worker Thread....Worker Thread 0Starting Waiter Thread....Waiter thread 10Main thread finished!Worker Thread 1Waiter thread 11Worker Thread 2Waiter thread 12Worker Thread 3Waiter thread 13Waiter thread 14
Hier is de uitvoering van de hoofdthread (programma) onafhankelijk van de uitvoering van de twee threads. Dus, ons hoofdprogramma eindigde als eerste, voordat het gevolgd werd door de Worker
en Waiter
threads.
conclusie
In dit artikel hebben we geleerd om de Python time.sleep()
functie op verschillende manieren te gebruiken.