Python中定时启动任务

# coding=utf-8
import sys, time

reload(sys)
sys.setdefaultencoding('utf-8')


# 固定间隔interval秒时间,执行一个方法
class Loop_Run:
    '''
    interval:间隔的时间
    exec_fun:执行的方法
    '''

    def loop_start(self, interval, exec_fun):
        while True:
            try:
                # sleep for the remaining seconds of interval
                time_remaining = interval - time.time() % interval
                time.sleep(time_remaining)
                exec_fun()
                print 'waiting ' + str(interval) + ' seconds...'
            except Exception, e:
                print e


def exec_fun():
    print ">>>> Hello, I am runing..."


if __name__ == "__main__":
    interval = 2
    Loop_Run().loop_start(interval, exec_fun)

需要注意的是,这个是跑在主进程上的,并非跑在线程上。

看下效果图:

Python中定时启动任务