zoukankan      html  css  js  c++  java
  • flask-apscheduler重复执行两次函数

    flask-apscheduler 使用方法:
    1.安装flask-apscheduler

    2.实例化并绑定app

    3.config.py 配置文件设置:

    id就是这个任务的编号,
    func 是需要执行的函数。
    args是函数需要的参数。
    trigger 有3种:date(一次性任务),cron(定时任务),interval(循环任务)
    interval循环间隔调度,参数如下:

    weeks (int) – 间隔几周 
    days (int) – 间隔几天 
    hours (int) – 间隔几小时 
    minutes (int) – 间隔几分钟 
    seconds (int) – 间隔多少秒 
    start_date (datetime|str) – 开始日期 
    end_date (datetime|str) – 结束日期 
    timezone (datetime.tzinfo|str) – 时区 
    

    cron定时任务,参数如下:

    year (int|str) – 年,4位数字 
    month (int|str) – 月 (范围1-12) 
    day (int|str) – 日 (范围1-31) 
    week (int|str) – 周 (范围1-53) 
    day_of_week (int|str) – 周内第几天或者星期几 (范围0-6 或者 mon,tue,wed,thu,fri,sat,sun) 
    hour (int|str) – 时 (范围0-23) 
    minute (int|str) – 分 (范围0-59) 
    second (int|str) – 秒 (范围0-59) 
    start_date (datetime|str) – 最早开始日期(包含) 
    end_date (datetime|str) – 最晚结束时间(包含) 
    timezone (datetime.tzinfo|str) – 指定时区 
    
    

    我试了一下,我设置的是每天的10点30-31分内间隔20秒执行一次函数,minute 设置的是30-31,注意31是包含的,也就是执行了2分钟,20秒一次也就是执行了6次。
    在调试模式下,Flask的重新加载器将加载烧瓶应用程序两次。因此flask总共有两个进程. 重新加载器监视文件系统的更改并在不同的进程中启动真实应用程序
    有几种方法可以解决这个问题。我发现效果最好的是禁用重新加载器:
    app.run(use_reloader=False)

    或者关闭调试debug=False

  • 相关阅读:
    JavaScript高度和宽度详解
    VC6程序图标
    VC++中的Dlg,App,Doc,view
    Vista桌面图标无法拖动
    VC2008中IE8脚本错误问题解决
    单文件安装包制作(转)
    AutoResetEvent与ManualResetEvent区别
    纯JavaScript中调用WebServices
    动态加载程序集Assembly.Load
    VC++小知识积累
  • 原文地址:https://www.cnblogs.com/plusUltra/p/10942004.html
Copyright © 2011-2022 走看看