av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術(shù)文章
文章詳情頁

python3.x - python每隔10秒運(yùn)行一個(gè)指定函數(shù)怎么實(shí)現(xiàn)呢?等待過程不能中斷主線程!

瀏覽:93日期:2022-06-29 15:47:41

問題描述

如題,求教!

問題解答

回答1:

可以通過另開一條線程, 去專門做這件事情, py2代碼如下, 如果是py3請(qǐng)自行調(diào)整下語法

# coding: utf8import threadingimport time# 真正要執(zhí)行的函數(shù)def t1(): print (’ok’)# 每隔10秒鐘執(zhí)行def t2(): while 1:t1()time.sleep(10)if __name__ == ’__main__’: t = threading.Thread(target=t2) t.start() # 此處寫你主線程要處理的事情..... t.join()回答2:

threading.Timer

import threading as thdimport timedef fn(): print(time.time()) thd.Timer(10,fn).start() fn()回答3:

如果直接開子進(jìn)程的話,退出主進(jìn)程時(shí)子進(jìn)程會(huì)一直存在, 建議設(shè)置成守護(hù)進(jìn)程

import sysimport signalimport threadingimport timefrom datetime import datetimedef quit(signum, frame): sys.exit()def process_fun(): while True:print datetime.now()time.sleep(1)if __name__ == ’__main__’: try:signal.signal(signal.SIGINT, quit)signal.signal(signal.SIGTERM, quit)p = threading.Thread(target=process_fun)#注冊(cè)成為主進(jìn)程p.setDaemon(True)p.start()#如果沒有主進(jìn)程, 就用循環(huán)代理while True: pass except Exception as e:pass回答4:

可以考慮Advanced Python Scheduler(http://apscheduler.readthedoc...能夠進(jìn)行極其復(fù)雜的定時(shí)設(shè)計(jì),每個(gè)幾秒幾分鐘,或者是某天的具體一刻等等,可以阻塞進(jìn)程,可以在后臺(tái),全部按照你的要求。

回答5:

# -*- coding: utf-8 -*-import geventimport timeclass Timer(object): '''定時(shí)器,定時(shí)執(zhí)行指定的函數(shù) ''' def __init__(self, start, interval):'''@start, int, 延遲執(zhí)行的秒數(shù)@interval, int, 每次執(zhí)行的間隔秒數(shù)'''self.start = startself.interval = interval def run(self, func, *args, **kwargs):'''運(yùn)行定時(shí)器:param func: callable, 要執(zhí)行的函數(shù)'''time.sleep(self.start)while True: func(*args, **kwargs) time.sleep(self.interval)def send_message(): passif __name__ == '__main__': scheduler = Timer(5, 10 * 60) gevent.spawn(scheduler.run(send_message))回答6:Python任務(wù)調(diào)度模塊 – APScheduler(點(diǎn)擊查看)

APScheduler是一個(gè)Python定時(shí)任務(wù)框架,使用起來十分方便。提供了基于日期、固定時(shí)間間隔以及crontab類型的任務(wù),并且可以持久化任務(wù)、并以daemon方式運(yùn)行應(yīng)用。

下面是一個(gè)簡(jiǎn)單的例子,每隔10秒打印一次hello world

from apscheduler.schedulers.blocking import BlockingSchedulerdef my_job(): print ’hello world’ sched = BlockingScheduler()sched.add_job(my_job, ’interval’, seconds=10)sched.start()回答7:

#-*- coding:utf8 -*- import multiprocessingimport timedef f(): print time.ctime(),’這是子進(jìn)程,每10S執(zhí)行一次’def work(): while 1: f() time.sleep(10)if __name__ == ’__main__’: p = multiprocessing.Process(target=work,) p.start() p.deamon = True while 1:print ’這是主進(jìn)程,每1秒執(zhí)行一次’time.sleep(1)

執(zhí)行結(jié)果:

python3.x - python每隔10秒運(yùn)行一個(gè)指定函數(shù)怎么實(shí)現(xiàn)呢?等待過程不能中斷主線程!

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 亚洲黄色av | 少妇一级淫片免费放播放 | 一级毛片在线看 | 日韩亚洲一区二区 | 在线免费观看a级片 | 亚洲成年人免费网站 | 亚洲乱码一区二区三区在线观看 | 99精品99| 久久国产精品视频 | 欧美亚洲免费 | 成人精品在线视频 | 午夜精品福利视频 | 成人免费视频网站在线看 | 成人在线免费观看视频 | 亚洲精品888 | 久久久2o19精品 | 国产成人免费一区二区60岁 | 欧美日韩在线高清 | 在线免费观看色 | 一区二区三区免费在线观看 | 欧美精品一区二区三区蜜桃视频 | 日日骑| 日韩欧美在线视频一区 | 国产精品视频免费看 | 亚洲成人精品 | 99久久99热这里只有精品 | 国产 日韩 欧美 在线 | 亚洲激情在线 | 欧美日韩视频在线 | 亚洲精品欧美 | 欧美涩涩网 | 午夜精品久久久久99蜜 | 成人a视频片观看免费 | 精品99久久久久久 | 久久精彩视频 | 欧美久久久久 | 一级片在线播放 | 波多野结衣在线观看一区二区三区 | 欧美在线观看网站 | 伊人免费在线观看 | 免费亚洲成人 |