Python 정시 임무 실현

2262 단어 python정시
Python 에서 정시 임 무 를 수행 하 는 방식 은 여러 가지 가 있 습 니 다.몇 가 지 를 소개 하 겠 습 니 다.
순환 sleep:
이것 은 가장 간단 한 방식 으로 순환 에 실행 할 임 무 를 넣 고 sleep 를 한 동안 실행 하 는 것 이다.단점 은 통제 가 쉽 지 않 고 sleep 는 차단 함수 라 는 것 이다.

def timer(n): 
  ''''' 
   n      
  ''' 
  while True:  
    print time.strftime('%Y-%m-%d %X',time.localtime())  
    yourTask() #            
    time.sleep(n)  
threading 의 Timer:
threading 모듈 의 Timer 는 정시 임 무 를 실현 하 는 데 도움 을 줄 수 있 고 차단 되 지 않 습 니 다.
예 를 들 어 3 초 후에 helloworld 를 인쇄 합 니 다.

def printHello(): 
  print "hello world" 
 
Timer(3, printHello).start() 
예 를 들 어 3 초 에 한 번 씩 helloworld 를 인쇄 합 니 다.

def printHello(): 
  print "Hello World" 
  t = Timer(2, printHello) 
  t.start() 
 
 
if __name__ == "__main__": 
  printHello() 
sched 모듈 사용:
sched 는 일종 의 스케줄 링(지연 처리 메커니즘)이다.

# -*- coding:utf-8 -*- 
# use sched to timing 
import time 
import os 
import sched 
 
 
#    sched   scheduler  
#                   ,                 。 
schedule = sched.scheduler(time.time, time.sleep) 
 
 
#             
def execute_command(cmd, inc): 
  ''''' 
                  
  ''' 
  os.system(cmd) 
  schedule.enter(inc, 0, execute_command, (cmd, inc)) 
 
 
def main(cmd, inc=60): 
  # enter       :    、   (                   )、        , 
  #          (tuple  ) 
  schedule.enter(0, 0, execute_command, (cmd, inc)) 
  schedule.run() 
 
 
#  60           
if __name__ == '__main__': 
  main("netstat -an", 60) 
정시 프레임 워 크 사용 APScheduler:
APScheduler 는 Quartz 를 기반 으로 하 는 Python 정시 작업 프레임 워 크 입 니 다.날짜,고정 시간 간격,crontab 형식 에 기반 한 작업 을 제공 하고 작업 을 지속 할 수 있 습 니 다.
이것 은 아직 스스로 시도 해 본 적 이 없 으 니,시간 이 좀 지나 면 다시 보충 하 자.
windows 의 정시 작업 사용:
필요 한 Python 프로그램 을 exe 파일 로 포장 한 다음 windows 에서 정시 실행 을 설정 할 수 있 습 니 다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기