zoukankan      html  css  js  c++  java
  • python 定时器,轮询定时器

    首先想要实现的效果是:每隔1段时间,就去调用1个接口确认结果,直到接口返回的结果为true,停止调用

    所以这里会用到python的定时器

    先来了解最简单的定时器:

    python 定时器默认定时器只执行一次,第一个参数单位S,几秒后执行

    import threading
    def fun_timer():
        print('Hello Time')
    
    timer = threading.Timer(1,fun_timer) #停留1s再去调用 fun_timer
    timer.start()

     

     改成以下可以执行多次

    建立loopTime.py

     1 from threading import Timer
     2 
     3 def fun_timer():
     4     print('Hello Timer!')
     5 
     6 class LoopTimer(Timer):
     7     """Call a function after a specified number of seconds:
     8                t = LoopTi
     9                mer(30.0, f, args=[], kwargs={})
    10                t.start()
    11                t.cancel()     # stop the timer's action if it's still waiting
    12        """
    13 
    14 
    15     def __init__(self,interval,function,args=[],kwargs={}):
    16         Timer.__init__(self,interval,function,args,kwargs)
    17 
    18     def run(self):
    19         '''self.finished.wait(self.interval) 
    20                 if not self.finished.is_set(): 
    21                     self.function(*self.args, **self.kwargs) 
    22                 self.finished.set()'''
    23 
    24         while True:
    25             self.finished.wait(self.interval)
    26             if self.finished.is_set():
    27                 self.finished.set()
    28                 break
    29             self.function(*self.args,**self.kwargs)
    30 
    31 t = LoopTimer(120,fun_timer)
    32 t.start()

    这个程序的运行结果是:每隔120秒,调用1次fun_timer(即打印一次Hello Timer)

     

    参考博客:

    https://blog.csdn.net/u013378306/article/details/79024432

  • 相关阅读:
    文献阅读方法 & 如何阅读英文文献
    科研方法
    水熊虫
    表达谱(DGE)测序与转录组测序的差别
    单细胞测序
    SGE:qsub/qstat/qdel/qhost 任务投递和监控
    统计分布汇总 | 生物信息学应用 | R代码 | Univariate distribution relationships
    JELLYFISH
    外泌体
    CDS & ORF & 启动子 & 终止子 & 转录因子 & 基因结构 & UTR
  • 原文地址:https://www.cnblogs.com/kaerxifa/p/11481047.html
Copyright © 2011-2022 走看看