본문 바로가기
파이썬

파이썬 Python에서 특정 시간까지 스레드를 절전 모드로 전환하려면 어떻게해야합니까?

by º기록 2020. 12. 30.
반응형

다음을 사용하여 특정 시간 동안 스레드를 절전 모드로 만들 수 있음을 알고 있습니다.

time.sleep(NUM)

2AM까지 스레드를 잠자기 상태로 만들려면 어떻게해야합니까? 새벽 2 시까 지의 시간 (초)을 결정하려면 수학을해야합니까? 아니면 라이브러리 기능이 있습니까?

(예, Windows의 cron 및 동등한 시스템에 대해 알고 있지만 외부 자극이나 프로세스 신호에 의존하지 않고 Python에서 스레드를 적절하게 잠자기 원합니다.)

 

해결 방법

 

다음은 클록 지터 또는 클록 조정을 고려하지 않는 절반 수준의 솔루션입니다. 그것을 제거하는 방법에 대한 의견을 참조하십시오.

import time
import datetime

# if for some reason this script is still running
# after a year, we'll stop after 365 days
for i in xrange(0,365):
    # sleep until 2AM
    t = datetime.datetime.today()
    future = datetime.datetime(t.year,t.month,t.day,2,0)
    if t.hour >= 2:
        future += datetime.timedelta(days=1)
    time.sleep((future-t).total_seconds())
    
    # do 2AM stuff

 

참조 페이지 https://stackoverflow.com/questions/2031111

 

 

반응형

댓글