What happens when using the python sleep module?
What
exactly happens when I call time.sleep(5)
in a python script? Does the program use a lot of your computer’s resources?
I’ve seen people using the sleep feature in their programs to schedule tasks, but that requires you to keep your hard drive running all the
time, right? This will take up your computer in the long run, right?
I’ve tried to figure out how to run the program remotely at a specific time, but I haven’t found a very intuitive explanation of how to do this.
Any suggestions?
Solution
sleep
marks a process (thread) as inactive until the end of a given time. During this time, the kernel does not schedule this process (thread) at all. It doesn’t waste resources.
Hard drives often have a Spin Down policy based solely on their usage. If they are not accessed within a certain amount of time, they will stop functioning. Once a certain process (thread) accesses them again, they start.
This means that letting a process (thread) sleep for a period of time gives the hard disk a chance to slow down (especially if the hibernation lasts for a long time, such as more than a few minutes).