Я создал скрипт Python, который записывает время работы ПК в течение дня и сохраняет информацию об использовании в базе данных на следующий день.
while 1:
time.sleep(59.9)
# now some code that increments the up-time value by 1 minute
# my other code here
Это проект функции сумматора временикоторый останавливает выполнение на 59,9 с (я выбрал 59,9 с вместо 1 минуты, так как увеличенное значение необходимо записать в 2 отдельных файла, поэтому я хотел выделить около 100 мс времени для своевременного выполнения этих операций)а затем записывает увеличенное значение в два отдельных файла и продолжает делать это до выключения системы.(каждая итерация этого цикла будет означать, что прошла минута)
Причина, по которой я выбрал sleep()
вместо какого-либо другого способа истечения / сохранения времени, заключается в том, что он достаточно хорошо подсчитывает в случаескачков напряжения, так как увеличенное время работы записывается каждую минуту.
Я знаю, что функция time.sleep()
не является точной и точной, когда речь идет о времени остановки на небольшую длительность (в миллисекундах или микросекундах).Но поскольку в моем коде время останавливается примерно на минуту, поэтому я считаю, что отклонение / неточность функции сна не будет значительным.
Я тестировал вышеупомянутый скрипт в течение примерно 2 месяцев ирезультаты весьма благоприятны.
Поэтому мне было интересно, является ли это эффективным способом хранения времени работы или существует лучший способ сделать это.