复制代码 代码如下:
class SLTimer(multiprocessing.Process):
#from datetime import datetime
#import time
def __init__(self, target=None, args=(), kwargs={},date=None,time=None):
\’\’\’\\
@param date 1900-01-01
@param time 00:00:00
\’\’\’
super(SLTimer,self).__init__(target=target,args=args,kwargs=kwargs)
_date = \’\’
if date is None:
_date = datetime.now().__str__()[:10]
else :
_date = date
_time = \’\’
if time is None:
_time = datetime.now().__str__()[11:19]
else:
_time = time
self.__runtime = \’%s %s\’ % (_date,_time)
def run(self):
timeLen = len(\’1900-00-00 00:00:00\’)
while True:
now = datetime.now().__str__()[:timeLen]
if now>=self.__runtime:
break
print \’sleeping… %s\’ % now
time.sleep(1.0)
super(SLTimer,self).run()
测试
复制代码 代码如下:
def show1():
from datetime import datetime
print \’hello,current time:%s\’ % datetime.now().__str__()
def t23():
from stock.task import SLTimer
timer = SLTimer(show1, time=\’16:31:50\’)
timer.start()